Android 如何检测用户是否触摸了屏幕的任何部分,而不是EditText的内部?

Android 如何检测用户是否触摸了屏幕的任何部分,而不是EditText的内部?,android,Android,我猜这意味着整个屏幕都可以触摸。到底是怎么做到的 然后计算X,Y是否在EditText中。覆盖要实现此操作的活动中的onTouchEvent….并使用event.getX()和event.getY()获取X,Y坐标 但我建议您在发布问题之前必须彻底搜索。我建议您在回答问题之前进行一些研究。如果活动级别的onTOuchEvent位于某个包含的元素(例如复选框)上,则不会真正调用它。如果使用的是曲面视图,则此操作有效。请更新您的答案,说明如何确保事件在任何情况下都会一直冒泡到容器(活动)?顺便说一句

我猜这意味着整个屏幕都可以触摸。到底是怎么做到的


然后计算X,Y是否在EditText中。

覆盖要实现此操作的活动中的onTouchEvent….并使用event.getX()和event.getY()获取X,Y坐标


但我建议您在发布问题之前必须彻底搜索。

我建议您在回答问题之前进行一些研究。如果活动级别的onTOuchEvent位于某个包含的元素(例如复选框)上,则不会真正调用它。如果使用的是曲面视图,则此操作有效。请更新您的答案,说明如何确保事件在任何情况下都会一直冒泡到容器(活动)?顺便说一句,我确实重写了此方法,它根本没有被冒泡。FYIpublic boolean onTouch(视图v,MotionEvent事件){)似乎是调用的对象,通过将对主视图的引用设置为:LinearLayout myView=(LinearLayout)findViewById(R.id.mainLayoutId)子视图中的事件不会到达容器,它们会被子视图(如复选框atc)吞噬。问题是不言自明的。检测您是否触摸过屏幕上的任何位置,但不在其中一个屏幕ui元素的范围内。因此,想象一个有10个ui控件的活动。我想知道用户是否触摸过任何位置我们在一个特定的ui控件上例外。我试过什么?一种叫做“先思考再编码”的东西
   @Override
    public boolean onTouchEvent(MotionEvent event) {
        int x = (int)event.getX();
        int y = (int)event.getY();
        switch (event.getAction()) {
            case MotionEvent.ACTION_DOWN:
            case MotionEvent.ACTION_MOVE:
            case MotionEvent.ACTION_UP:
        }
    return false;
    }