GridView Get Item On Touch(GridView 在触摸时获取项目)
问题描述
我试图在触摸 gridview 时选择项目,但我无法使用 onClick,因为它会启动另一个活动.我想要实现的是能够在网格视图中移动项目,因为我找不到这样做的方法,所以我正在尝试一种方法..
I'm trying to get the item selected when i touch a gridview, i cant use the onClick as that starts another activity. What I'm trying to achieve is to be able to move items in a gridview around and since i cant find a way of doing it I'm trying to make a way..
所以是的.. 有没有办法让哪个项目被触摸",我尝试使用 Rect 但它没有正常工作..
So yeah.. Is there a way to get which item has been 'touched', I've tried using a Rect and it hasn't worked properly..
(我能详细说明一下吗..我不能为此使用 onItemClick..)
(Can i just elaborate.. i Cant use the onItemClick for this..)
任何帮助都会很棒,谢谢!:)
Any help would be great, Thank you! :)
推荐答案
如果 Glendon Trullinger 的使用 onLongClickListener 的建议对你来说还不够,试试 GridView#pointToPosition(int x, int y),您可以从 View.OnTouchListener,使用 MotionEvent 的 x 和 y 坐标.使用该位置,您可以使用 获取该位置的子视图这个答案,和/或您可以使用 AdapterView#getItemAtPosition(int)
If Glendon Trullinger's suggestion of using onLongClickListener isn't sufficient for you, try GridView#pointToPosition(int x, int y), which you can call from a View.OnTouchListener, using the MotionEvent's x and y coordinates. With that position, you can get the child view at that position using this answer, and/or you can get the adapter item itself using AdapterView#getItemAtPosition(int)
这篇关于GridView 在触摸时获取项目的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:GridView 在触摸时获取项目
基础教程推荐
- Spring AOP错误无法懒惰地为此建议构建thisJoinPoin 2022-09-13
- 使用堆栈算法进行括号/括号匹配 2022-01-01
- RabbitMQ:消息保持“未确认"; 2022-01-01
- REST Web 服务返回 415 - 不支持的媒体类型 2022-01-01
- 问题http://apache.org/xml/features/xinclude测试日志4j 2 2022-01-01
- 存储 20 位数字的数据类型 2022-01-01
- 如何对 Java Hashmap 中的值求和 2022-01-01
- Struts2 URL 无法访问 2022-01-01
- 修改 void 函数的输入参数,然后读取 2022-01-01
- 无法复制:“比较方法违反了它的一般约定!" 2022-01-01
