2013-10-12 43 views
0

所以我expandablelistview樣子(抱歉,我不能發表圖片我都小於10聲望)。在組項目佈局文件,我有一個TextView的&一個imageview的是這樣的:如何在Android中的Expandablelistview中爲組項目實現不同的clicklisteners?

Textview   Imageview(info icon) 
Textview   Imageview(info icon) 

我要的是上點擊右側的信息圖標它應該顯示敬酒幾秒鐘給這個組的信息&如果我點擊textview它應該正常展開顯示其下的子項目。

我2個佈局文件看起來像這樣: Mainlayout.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    tools:context=".MainActivity" > 

     <ExpandableListView 
      android:id="@+id/lvexp" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:groupIndicator="@null" 
      android:background="@drawable/back"> 
    </ExpandableListView> 

</RelativeLayout> 

GroupLayout.xml

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
        android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:orientation="horizontal" > 

<TextView 
    android:id="@+id/lblheader" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center_horizontal" 
    android:text="Large Text" 
    android:layout_weight="1.0" 
    android:gravity="center" 
    android:paddingTop="12dp" 
    android:paddingBottom="12dp" 
    android:textAppearance="?android:attr/textAppearanceLarge" 
    android:textColor="#24B9FF" /> 

<ImageView 
    android:id="@+id/help_icon" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:src="@drawable/info_icon" 
    android:layout_weight=".1" 
    android:paddingTop="12dp" 
    android:clickable="true" 
    android:paddingBottom="12dp" /> 

我該如何處理點擊的ImageView顯示toast.I有實施onGroupClick &我能夠擴大click.But組,但我怎麼能實現Imageview的點擊偵聽器?

請help.I沒有任何其他的選擇,但在應用程序中使用Expandablelistview。

回答

1

如何將此groupLayout xml附加到您的適配器上。實際上您必須在您的ExpandableListAdapter中執行方法getGroupView()。在那裏,你可以擡高這個佈局,並訪問該佈局各方面的意見,寫點擊監聽器此佈局..

Ok..this是樣品getGroupView()實現clicklisteners供您參考:

@Override 
     public View getGroupView(int groupPosition, boolean isExpanded, 
       View convertView, ViewGroup parent) { 
      View v = convertView; 
      if(v == null){ 
       v= mInflator.inflate(R.layout.group_layout, null); 
      } 

      TextView text = (TextView)v.findViewById(R.id.your text id); 
      ImageView image = (ImageView)v.findViewById(R.id.your image id); 


      text .setOnClickListener(new OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      ///your code here 
     } 
     } 
    }); 



     image .setOnClickListener(new OnClickListener() { 
      @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      ///your code here 
     } 
     } 
    }); 

      return v; 
     } 
+0

多德我正在做你想說的話。我剛剛在這裏展示了grouplayout xml,因爲我想展示我的羣組項目是怎樣的。你可以告訴我如何分別爲textview和imageview編寫點擊監聽器。 – Droidwala

+0

我編輯了顯示代碼的answerListeners爲你的意見的代碼.... – Vikram

+0

謝謝man.But一個問題,因爲我的所有textview和imageview是從單個XML(見我的Grouplayout.xml)。所以每一個會有相同的身份證,所以我怎麼知道哪個imageview(在哪個行被點擊)。如果我打擾你愚蠢的問題,謝謝。謝謝你的幫助。 – Droidwala

相關問題