2012-06-25 153 views

回答

3

是的,你可以在Adapter類本身內部做到這一點。只需在Adapter類中爲ImageView和Textview設置點擊偵聽器即可。

+0

,我不能執行onItemSelectedListener()? –

+0

如果你不想要列表行單擊事件......那麼不需要...... –

+0

@ Archie.bpgc - 它取決於你的要求。 – user370305

1

有很多例子,爲同

this

點應該保持

  • 要設置的聽衆在getView(每個視圖不會在每個 創建在獲取視圖中的時間只是通過已經創建的一個或者可以通過這個 並在相同的適配器類中實現監聽器)

  • 使視圖(如TextView的)可點擊的真實

  • 你會還需要排位置,以便可以使用不同的邏輯 像得到&設置標籤或視圖parant在本link

1

是的,你可以做到這一點。您可以在適配器類中單獨設置onClickListener,然後將這些按鈕或文本視圖設置爲不可聚焦,如果您希望使用onItemClickListener單擊整個列表項來執行不同的操作。

 yourButton.setFocusable(false); 
     yourButton.setFocusableInTouchMode(false); 
2

是的當然!

在您的自定義ListAdapter,您可以設置onClickListener象下面這樣:

@Override 
public View getView(int position, View convertView, ViewGroup parent) { 
    View row = convertView; 
    if(row == null){ 
     LayoutInflater vi = (LayoutInflater) this.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
     row = vi.inflate(this.textViewResourceId, null); 
    } 

    row.findViewById(R.id.image_item).setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View arg0) { 
      // TODO Auto-generated method stub 

     } 
    }); 

    row.findViewById(R.id.text_item).setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View arg0) { 
      // TODO Auto-generated method stub 

     } 
    });  
} 
在這種情況下
相關問題