【问题标题】:How to get the poisition of the listview for OnTouchLisener in Android? [closed]如何在 Android 中获取 OnTouchListener 的列表视图的位置? [关闭]
【发布时间】:2013-08-23 19:38:35
【问题描述】:

在我的应用程序中,我有一个自定义列表视图(它包含图像视图,两个文本视图)。我使用 OnTouch Lisener 触摸列表视图我以全屏打开特定图像,当我在 ACTION_Up 方法中释放该图像时。 一切正常,但我无法获取列表项位置。请任何人告诉我如何获取 OnTouch 列表视图的位置。

提前致谢。

【问题讨论】:

标签: android android-listview


【解决方案1】:

使用onItemClickListener 获取列表项和项的位置

【讨论】:

  • 但我需要 onTouchlistner 操作,例如 ACTION_DOWN ACTION_UP
  • @LiaPronina 你太好了..
  • 如何获得 onTouch 的位置?
  • @Piyush Gupta 对不起,你是什么意思? :)
【解决方案2】:

为您的列表视图尝试 OnItemClickListener..

listView.setOnItemClickListener(new OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view,
                    int position, long id) {

              // here **position** will give the selected list item position
            }
        });

您还可以在同一活动中为 listview 实现 onTouchListener 和 onItemClickListener,如下所示:

listView.setOnTouchListener(new ListView.OnTouchListener() {
            @Override
            public boolean onTouch(View v, MotionEvent event) {
                int action = event.getAction();
                switch (action) {
                case MotionEvent.ACTION_DOWN:

                     //action down          
                    break;

                case MotionEvent.ACTION_UP:
                    // action up
                    break;
                }

                // Handle ListView touch events.
                v.onTouchEvent(event);
                return true;
            }
        });

【讨论】:

  • 但我需要 onTouchlistner 操作,例如 ACTION_DOWN ACTION_UP
  • 查看我编辑的答案...
  • 我无法在 ontouch 事件中获得位置。我需要 onTouch 中的位置值。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多