2015-06-20 66 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,谢谢你的帮助:) –