2010-01-10 53 views
8

我想要檢測用戶在Android應用程序的任何位置查看視圖的任何位置。如何檢測用戶在Android中查看視圖的時間

我的代碼如下所示:

linearLayout = (LinearLayout) findViewById(R.id.linearLayout); // main layout 
// ... 
linearLayout.setOnTouchListener(this); 
// ... 
public boolean onTouch(View v, MotionEvent event) { 
    Toast.makeText(this, "Touch!", 1000); 
    if (event.getAction() == MotionEvent.ACTION_DOWN) { 
     Toast.makeText(this, "Down!", 1000); 
     return true; 
    } 
    return false; 
} 

...但是當我點擊的看法,我不明白吐司!

觸摸事件是否在模擬器中工作 - 或者我的代碼中有錯誤嗎?

+0

我一直在尋找相同的解決方案。感謝Biswajit – 2016-05-23 17:58:33

回答

12

我認爲問題出在您的消息顯示代碼而不是觸摸檢測代碼。

您正在創建Toast對象,但不顯示它。您需要致電show() method

此外,the makeText() method的參數duration應該是LENGTH_SHORTLENGTH_LONG之一。

嘗試:

Toast.makeText(this, "Down!", Toast.LENGTH_LONG).show(); 
+4

+1。我*總是*忘記添加'.show()'給我的敬酒! – 2010-01-10 15:01:41

+0

d'oh! + 1投票+ 1勾+謝謝x 2 – 2010-01-10 20:55:05

+0

我們都去過那裏......好吧,無論如何......兩次。 – 2010-03-02 18:11:51

相關問題