Java 安卓:重启计时器

Java 安卓:重启计时器,java,android,eclipse,timer,timertask,Java,Android,Eclipse,Timer,Timertask,我使用以下代码创建了一个TimerTask: Screen_Timer_Task = new TimerTask() { @Override public void run() { runOnUiThread(new Runnable() { @Override public void run() { // Do my stuff

我使用以下代码创建了一个TimerTask:

    Screen_Timer_Task = new TimerTask() {

    @Override
    public void run() {

    runOnUiThread(new Runnable()
    {
            @Override
            public void run()
            {

                    // Do my stuff

            }
    });

    }

    };
然后,我从以下内容开始计时任务:

    Screen_Timer.scheduleAtFixedRate(Screen_Timer_Task, 1, 1);
这很好用。但是打电话之后

    Screen_Timer.cancel();

    Screen_Timer.purge();
它不会重新启动

    Screen_Timer.scheduleAtFixedRate(Screen_Timer_Task, 1, 1);
应用程序正在崩溃

“任务可以运行一次”来自文档

如果要使用它,必须再次创建
TimerTask
对象

再次设置
计时器
,因为
取消()

“取消计时器和所有计划的任务。如果有当前正在运行的任务,则不会受到影响。在此计时器上不能计划更多的任务。后续调用将不起任何作用。”

否,它不起作用。我把它放在一个public void函数中并调用它,但是在第二次,应用程序崩溃了。所以显示你得到的LogCat。我通过LAN连接将应用程序发送到我的设备,所以我没有LogCat。所以每次显示你现在如何再次创建TimerTask创建新的
计时器
每次都是。这就是解决办法。谢谢!!
public void start_my_timer()
{

    Screen_Timer_Task = new TimerTask() {

        @Override
        public void run() {


                runOnUiThread(new Runnable()
                {
                    @Override
                    public void run()
                    {
                                // Do my stuff
                    }
                });

        }

    };

    Screen_Timer.schedule(Screen_Timer_Task, 1, 1);

}