Java Android如何在shcedule之后更改TimerTask间隔?

Java Android如何在shcedule之后更改TimerTask间隔?,java,android,Java,Android,我想在另一个代码段中更改计时器的间隔。有办法吗? 我不想重定时我的代码,我想添加一个新的“期间”间隔 日程安排好后我怎么做 你不能。您必须取消当前任务并重新安排时间。您应该先取消计时器,然后才能为其设置新的计划 timerUploadTime = new Timer(); timerUploadTimeTask = new TimerTask() { @Override public void run() { mHandler.post(new Runnable() {

我想在另一个代码段中更改计时器的间隔。有办法吗? 我不想重定时我的代码,我想添加一个新的“期间”间隔


日程安排好后我怎么做

你不能。您必须取消当前任务并重新安排时间。

您应该先取消计时器,然后才能为其设置新的计划

timerUploadTime = new Timer();
timerUploadTimeTask = new TimerTask() {
   @Override public void run() {
      mHandler.post(new Runnable() {
        @Override
         public void run() {
             ...
          }
      }
    });
 }
 };

timerUploadTime.schedule(timerUploadTimeTask, 1, Integer.parseInt(Utils.loadStringValue(mycontext, "refresh")));

实现这一点的一种方法是将计时器安排为每秒运行一次,在计时器可运行范围内,每秒增加一个计数器,然后可以添加if语句,通过所需的计数器变量(以秒为单位)检查计数器mod,以返回而不做任何操作

timerTask.cancel();
timerTask = new MyTimerTask();
timer.schedule(timerTask, delay);

还有其他方法吗?还是其他选择?@lacas,不,我不知道。
timerCounter++;
if((timerCounter%desiredCounter)!=0){
 return;
}