Q
列表項雙擊
-1
A
回答
1
嘗試這樣的事情
YourView.setOnTouchListener(new View.OnTouchListener() {
private GestureDetector gestureDetector = new GestureDetector(Youractivity.this, new GestureDetector.SimpleOnGestureListener() {
@Override
public boolean onDoubleTap(MotionEvent e) {
Log.d("TEST", "onDoubleTap");
return super.onDoubleTap(e);
}
});
@Override
public boolean onTouch(View v, MotionEvent event) {
Log.d("TEST", "Raw event: " + event.getAction() + ", (" + event.getRawX() + ", " + event.getRawY() + ")");
gestureDetector.onTouchEvent(event);
return true;
}
});
0
要做到這一點,你可以使用Handler
類。
創建一個類型爲int
的新變量,稱爲counter
,並將其設置爲0
。
然後找到你的listview並調用方法setOnItemClickListener(listener)
就可以了。 在這裏您需要檢查counter
是0
還是1
。
如果是0
將其增加1
並添加一個Handler
postDelayed
線程來重置計數器(將其設置爲零)。如果它是1
,請重置計數器並執行您的操作。
編輯:
我只是發現this回答說這是最好使用長按操作如何在UI準則描述。這也是用戶期望的。
那麼也許使用長按而不是雙擊?
但這裏是一些示例代碼:
int counter = 0; //our counter to check if the item has been tapped already
Handler h = new Handler(); //import from android.os
ListView lv = (ListView) findViewById(R.id.listview);
lv.setAdapter(adapter); //set your adapter here
lv.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapter, View v, int position, long arg3) {
switch(counter) {
case 0: //first tap
counter++; //increase the counter
h.postDelayed(new Runnable() {
@Override
public void run() {
counter = 0;
}
}, 2000); //set the counter to 0 after 2 seconds (2000 milliseconds)
break;
case 1: //second tap
counter = 0; //reset the counter
//Do your stuff here
break;
}
}
});
這裏提供一些參考:
- 的Handler類
- 的
OnItemClickListener
here - How to use an basic ArrayAdapter
+0
在android中有現成的手勢檢測器,不需要重新發明輪子。 – njzk2
相關問題
- 1. 列表視圖雙擊項目
- 2. C#列表框項目雙擊事件
- 3. 拖放列表 - 雙擊刪除項目
- 4. Flex4列表項雙擊事件
- 5. 雙擊列表項打開頁面
- 6. 列表視圖雙擊
- 7. 列表查看雙擊
- 8. 選擇列表雙擊選中列表
- 9. 雙擊列表視圖項目時獲取選定項目
- 10. 訪問雙擊列表打開表格
- 11. 列表項點擊問題 - 單擊雙擊兩個視圖得到添加
- 12. 雙擊事件無法在Internet Explorer工作選項列表
- 13. Delphi在列表框中雙擊時更改項目背景
- 14. 如何使用MVVM雙擊列表框項目上的命令?
- 15. 雙擊列表框項目打開瀏覽器
- 16. 雙擊下拉列表中的選定項目
- 17. MVVM - 選擇列表框中的項目,雙擊並加粗
- 18. 雙擊列表視圖中的一行
- 19. 列表視圖框,雙擊文本框
- 20. 在列表視圖上雙擊
- 21. 列表視圖雙擊事件
- 22. 列表需要雙擊切換類
- 23. 我無法驗證雙擊列表中的雙打列表中的雙打列表'
- 24. 雙擊所選ListBox項目
- 25. 雙列表列表
- 26. 點擊列表項CalendarView
- 27. 獲取點擊列表項
- 28. JTextPane中的雙列表項插入
- 29. 雙間距項目符號列表
- 30. 菜單項的雙向鏈接列表
請至少分享您的代碼! – bendaf