gpt4 book ai didi

android - MotionEvent GetY() 和 getX() 返回不正确的值

转载 作者:IT老高 更新时间:2023-10-28 23:17:39 36 4
gpt4 key购买 nike

我有以下情况:

我有一个带有 ImageView 和 TextView 的自定义 ListView。ImageView 有一个 onTouchListener,它调用我的 onTouch 方法。以下是其中的一些内容:

if (event.getAction()==MotionEvent.ACTION_MOVE) {
layout.leftMargin = (int) event.getX() - dragIcon.getWidth()/2;
layout.topMargin = (int) event.getY() - dragIcon.getHeight()/2;
//Log.d("Tag", "Pozycja: " + event.getX() +", "+ event.getY());
}
dragIcon.setLayoutParams(layout);

当检测到移动时,我正在显示新图像(不是在 ListView 中),并且我开始根据 x 和 y 坐标移动它。

问题是,getX 和 getY 返回相对于列表中 ImageView 的位置,而不是整个 ListView(我认为是这样)。所以当我触摸中间的一个项目并向上滑动手指时,getY 返回负值(高于 ImageView 边界)。

希望,我解释清楚了..

任何想法如何获得这个相对于屏幕尺寸的坐标?谢谢。

最佳答案

尝试使用 getRawX()getRawY() 代替 getX()getY()

关于android - MotionEvent GetY() 和 getX() 返回不正确的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6237200/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com