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