2013-04-28 91 views
0

我正在開發一個GUI,我正在構建一個自定義ListView。我想在一個行上長按一下彈出菜單,並通過簡單的點擊獲取數據。一切正常,直到我將OnLongClickListener添加到行(如果行可以自己處理此事件,我更喜歡它)我停止將事件發送到OnItemClickListener。任何想法如何解決這個問題?OnLongClickListener阻止OnItemClickListener事件

回答

0

您需要setOnItemLongClickListener而不是在onLongClickListener

listView.setOnItemLongClickListener (new OnItemLongClickListener() { 
    public boolean onItemLongClick(AdapterView parent, View view, int position, long id) { 
    //do your stuff here 
    } 
}); 
+0

但是,然後我必須處理層次結構中上一級的事件。這一行本身是不可能處理的? – SverkerSbrg 2013-04-28 12:51:44

+0

@SverkerSbrg不能在適配器中使用它。你爲什麼要在適配器中處理它。讓我看看你的代碼,發佈你的代碼 – Pragnani 2013-04-28 12:54:21

+0

好的,那麼我只是把它放到一個層次上,謝謝! – SverkerSbrg 2013-04-28 12:55:46

0

見鏈接

android doc

返回 true,如果回調消耗的長按,否則爲false。

+0

將其設置爲false確實足以讓LongClick方法中的代碼停止工作 – SverkerSbrg 2013-04-28 17:59:09