我试图让我选择的项目,当我触摸gridview,我不能使用onClick作为开始另一项活动。我试图实现的是能够移动项目在GridView周围,因为我无法找到一种方法做到这一点我试图让方式..GridView获取项目触摸
所以是的..有没有办法获得该项目已被“感动”,我已经使用矩形审判,它已经无法正常工作..
(可我只是阐述..我不能使用onItemClick这个..)
任何帮助将是伟大的,谢谢! :)
我试图让我选择的项目,当我触摸gridview,我不能使用onClick作为开始另一项活动。我试图实现的是能够移动项目在GridView周围,因为我无法找到一种方法做到这一点我试图让方式..GridView获取项目触摸
所以是的..有没有办法获得该项目已被“感动”,我已经使用矩形审判,它已经无法正常工作..
(可我只是阐述..我不能使用onItemClick这个..)
任何帮助将是伟大的,谢谢! :)
如果使用onLongClickListener的格兰登Trullinger的建议是不够的你,试试GridView#pointToPosition(int x, int y),你可以从一个View.OnTouchListener
调用,使用MotionEvent
的X和Y坐标。随着那个位置,你可以在该位置使用this answer子视图,和/或可以使用AdapterView#getItemAtPosition(int)
为了得到这是“感动”
gridView.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent me) {
int action = me.getActionMasked(); // MotionEvent types such as ACTION_UP, ACTION_DOWN
float currentXPosition = me.getX();
float currentYPosition = me.getY();
int position = gridView.pointToPosition((int) currentXPosition, (int) currentYPosition);
// Access text in the cell, or the object itself
String s = (String) gridView.getItemAtPosition(position);
TextView tv = (TextView) gridView.getChildAt(position);
}
}
我的项目获取适配器项目本身有点困惑。您想确定哪个项目已被点击以便您可以移动它,但是您不能使用由于新的活动启动而点击项目时调用的方法?如果您需要Android主屏幕上使用的功能,您可以查看onLongClickListener()。 –
你好托马斯,你可以请分享一些代码片段,因为我必须解决类似的问题,我想从一个单元格到另一个单元格的图像。 –