首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >没有调用Android onTouch(View,MotionEvent),但调用了onTouchEvent(MotionEvent event)?

没有调用Android onTouch(View,MotionEvent),但调用了onTouchEvent(MotionEvent event)?
EN

Stack Overflow用户
提问于 2012-02-17 14:28:55
回答 3查看 8.8K关注 0票数 1

有人知道为什么我的日志显示onTouch(View,MotionEvent)没有被调用。我可以看到正在调用onTouchEvent(MotionEvent事件)。两者都在实现View.OnTouchEvent的Activity中被覆盖。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-02-17 14:42:09

AFAIK,Activity没有定义onTouch(..),但它定义了onTouchEvent(..)。所以你是在覆盖后者,而仅仅是定义前者。

此外,onTouchEvent(..)是最后的触摸处理程序-只有当视图不处理它时才会调用它:

代码语言:javascript
复制
onTouchEvent(MotionEvent event)
Called when a touch screen event was not handled by any of the views under it.
票数 3
EN

Stack Overflow用户

发布于 2012-08-23 12:57:06

当触摸View时调用onTouch(),但当触摸Activity (屏幕)时调用onTouchEvent()

onTouch()的返回值为true时,触摸事件将被onTouch()占用,否则事件将被下发到onTouchEvent()

希望它对你有用。

票数 4
EN

Stack Overflow用户

发布于 2012-02-17 14:46:03

可以在android.some中使用onTouch,就像这样在您需要覆盖activity.no时使用

代码语言:javascript
复制
      ed.setOnTouchListener(new OnTouchListener() {

            public boolean onTouch(View v, MotionEvent event) {
                // TODO Auto-generated method stub
                Toast.makeText(getApplicationContext(), "hai",   Toast.LENGTH_LONG).show();
                return false;
            }
        });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9323873

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档