如何在Android的setOnTouchListener中获取列表项的位置?

3
我正在Android中实现ListView。当按下ListView项目时,我希望增加ListView行的layout_width和height。我在anim文件夹中使用了zoom_in动画来缩放视图,但是由于我不知道如何在selector中启动动画,因此无法在selector中使用它。
我尝试了另一种方法,在适配器的getView()函数中实现动画。在这里,我需要从onTouchListener函数中设置选定视图的位置。但是现在我无法在onTouch函数中获取所选行的位置。我想知道如何在onTouch函数中获取行的位置?或者如何在适配器的getView()函数中获取按下状态?谢谢。
1个回答

9

在您的触摸事件中,您可以获取触摸点的X,Y坐标。
ListView有一个名为pointToPosition的方法。

int pos = YOUR_LISTVIEW.pointToPosition((int) e1.getX(), (int) e1.getY());
  • e1MotionEvent

2
优秀的解决方案。我一直在等待像这样的解决方案。运行得非常好。非常感谢。 - gReEn HoRn
好的解决方案。谢谢。 - Vijay Vankhede

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接