2016-04-01 71 views
2
view.findViewById(R.id.btn).setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 

     EditText input=(EditText)parent.findViewById(R.id.input); 

     //run at specified time 
     Toast.makeText(getApplicationContext(), input.getText().toString(), Toast.LENGTH_SHORT).show(); 
     //run at specified time 

    } 
}); 

我知道有兩種方法可以做到這一點的Android,在指定時間運行的一些代碼行

首先是處理器,但是當設備睡眠

二是AlarmManager這是行不通的,但它必須創建另一個活動或服務

我只想運行一段代碼,並且這些代碼對當前活動有很多依賴性,是否有任何其他方式在指定時間運行代碼?

+0

只是將手機設置爲不在當前活動中休眠 –

+0

@CL那麼您的目標是什麼? –

+0

使用AlarmManager和broadcastreceiver有什麼問題? –

回答

2

爲了在指定的時間運行一些代碼行,你需要定製android.Use類的Timer類而不是Countdown Timer類。在毫秒

Timer timer = new Timer(); 
    timer.scheduleAtFixedRate(new TimerTask() { 
     @Override 
     public void run() { 

      //your lines of code at specified time 

     } 
    }, delays Millisecond, Interval Millisecond); 
  • 延遲裝置定時器此毫秒

  • 間隔毫秒定時器裝置,在該特定時間每次運行之後啓動。