簡體   English   中英

不是調用Android onTouch(View,MotionEvent),而是調用了onTouchEvent(MotionEvent event)?

[英]Android onTouch(View,MotionEvent) not called but onTouchEvent(MotionEvent event) is called?

有誰知道為什么我的日志指示未調用onTouch(View,MotionEvent)。 我可以看到正在調用onTouchEvent(MotionEvent event)。 兩者都在實現View.OnTouchEvent的Activity中被覆蓋。

觸摸View時調用onTouch() ,但是觸摸Activity (屏幕)時調用onTouchEvent()

onTouch()的返回值為true時,touch事件將由onTouch() ,否則,該事件將傳遞給onTouchEvent()

希望對您有用。

AFAIK,活動未定義onTouch(..) ,但確實定義了onTouchEvent(..) 因此,您將覆蓋后者,但僅定義前者。

另外, onTouchEvent(..)是不得已的觸摸處理程序-僅當視圖不處理它時才被調用:

onTouchEvent(MotionEvent event)
Called when a touch screen event was not handled by any of the views under it.

onTouch可以在android中使用。類似的用法可以在ur活動中使用。無需覆蓋

      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;
            }
        });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM