2015-06-20 38 views
-1

我是Android開發新手。Android中的onTouchEvent()

如何在一個活動中編寫onTouchEvent()並訪問應用程序中的所有其他活動?

我想在下面的方法:

Public class TouchActivity extends Activity 
{ 
    @Override 
    public boolean onTouchEvent(MotionEvent event){ 

     int action = MotionEventCompat.getActionMasked(event); 
     boolean touch_up_detect; 
     if (action == MotionEvent.ACTION_UP) 
     { 
      //touch_up_detect = true; 
      if (timer == null) 
      { 
       timer = new Timer(); 
       timer.schedule(new ScheduledTaskWithHandeler(), 10000); 
      }    
     } 
     else if (action == MotionEvent.ACTION_DOWN) 
     { 
      System.out.println("user touching screen**********"); 
      if (timer != null) 
      { 
       timer.cancel(); 
       timer.purge(); 
      }     
     } 
     return false;   
    } 
    class ScheduledTaskWithHandeler extends TimerTask { 

     @Override 
     public void run() { 
      // TODO Auto-generated method stub 
      Intent intent = new Intent(TouchActivty.this, MainActivity.class); 
      startActivity(intent); 

     } 
    } 
} 

public class DashboardActivity extends TouchActivity 
{ 

} 

每當我接觸到儀表盤的活動,我無法從TouchActivity訪問onTouchEvent()

+3

「其非常」。沒有。說你應該得到更快的答案,因爲你的問題是「緊急的」在這裏不起作用。如果你想要一個更快的答案,編輯你的問題儘可能的負責,如果需要的話,開始賞金(獲得足夠的答覆回答後) – hexafraction

+0

你所有的活動應該擴展你創建的TouchActivity,觸摸事件將被訪問 –

回答

0

這是因爲您正在使用DashboardActivity擴展活動。這意味着,就您的設備而言,這是兩個獨立的功能。活動大致是獨立的彼此獨立的野獸。

如果您只是想操作Touch Activity中的計時器,您可以啓動結果的活動並將計時器作爲參數傳遞。我認爲這將實現你所要求的。 Here你可以找到一個關於在活動之間傳遞數據的問題。

+1

Got它,我們必須在儀表板活動中調用super() –

+0

@GunaSekhar我很高興你明白了!我希望我以某種方式提供幫助。 –

+0

@ Rose Reatherford,謝謝你的幫助:) –