繁体   English   中英

矩形包含(x,y)不触发

[英]Rect contains(x,y) doesn't trigger

我正在尝试模拟自定义android视图中的按钮单击。 我需要为此使用Rect.contains()方法,但是无论我在rect上单击什么位置,它都不会触发,也不会返回true。

 rect = new Rect(0, 0, 720, 205);

点击坐标的示例是(401,103),这将返回false。

if(rect.contains((int)event.getX(),(int)event.getY())){
                    Log.w("CLICKED","");
                }

从不记录“已单击”。 我已经阅读了文档,上面写着'left <= x <right and top <= y <bottom'返回true

在此示例中0 <= 401 <720和0 <= 103 <205,这是正确的,但似乎不起作用。

任何帮助表示赞赏

getX()和getY()返回相对于调度事件的视图的坐标。 如果该视图的原点不在0、0处,则它可能不满足rect.contains((int)event.getX(),(int)event.getY())条件。

但是,可以使用getRawX()和getRawY()返回相对于Screen的绝对坐标。

可能是这种情况-

pic1.png

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM