2012-02-28 76 views
3

我有一個ListFragment,我想使用onitemclick事件。但我有很多問題。你可以幫我嗎 ?我把事件onstart這是正確的還是正確的?Android的listfragment onItemClick不工作?

在此先感謝。 ...

public class MesajFragment extends android.support.v4.app.ListFragment 
    ... 
    @Override 
public void onStart() { 
    // TODO Auto-generated method stub 
    super.onStart(); 

    getListView().setOnItemClickListener(new OnItemClickListener() { 

     public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, 
       long arg3) { 
      // TODO Auto-generated method stub 
      Toast.makeText(getActivity(), arg2 + " okwww ", 
        Toast.LENGTH_LONG); 

     } 
    }); 
} 
+0

我想可能在你的代碼是一個問題,在其他地方。我在這裏設置了處理程序方法中的斷點...... http://pastebin.com/yb12XaTg。我懷疑它與Android處理線程的方式有關。 – Jackie 2012-02-28 20:51:34

回答

9

你不在你的吐司消息上調用.show()。它應該看起來像這樣:

Toast.makeText(getActivity(), arg2 + " okwww ", 
        Toast.LENGTH_LONG).show(); 

請參閱.show()在最後?您的onClick可能正在工作。這似乎並不是因爲你的Toast消息沒有顯示

+0

其實你是對的,但是,我正在調試,並有一個斷點,我放在節目,它是一樣的。所以這不是解決方案。 – Yaya 2012-02-28 20:58:27

+0

我不確定我是否理解你的評論。所以敬酒正在顯示?還會發生什麼?你期望發生什麼? – dymmeh 2012-02-28 21:06:31

+0

抱歉,輸錯了。我把斷點,它仍然不停在斷點上。 – Yaya 2012-02-29 08:08:37

5

你的例子獲取ListView並設置其點擊監聽器。在擴展ListFragment,你需要重寫onListItemClick代替:

@Override 
public void onListItemClick(ListView l, View v, int position, long id) { 
    // TODO Handle item click 
}