我用2个任务激活一个计时器。
问题是当我使用0.4秒延迟的计时器激活我的第二个任务时,应用程序跳过1或2个图像。实际上只有大约45张图像显示出来。
MyTimerTask2 myTask = new MyTimerTask2();
myTimer = new Timer();
myTimer.schedule(myTask, 0 , 400);
有人可以帮我吗?
答案 0 :(得分:1)
使用处理程序
Runnable runnableforadd ;
Handler handlerforadd ;
handlerforadd = new Handler();
runnableforadd = new Runnable() {
@Override
public void run() {
//Your Code Here
handlerforadd.postDelayed(runnableforadd, 400); }
};
handlerforadd.postDelayed(runnableforadd, 0);
答案 1 :(得分:0)
您的计时器无效,因为您尚未定义TimerTask
。 Timer需要创建为子类,需要定义,如下所示:
private long splashDelay = 5000;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.splash);
TimerTask task = new TimerTask()
{
@Override
public void run() {
//Your code here
}
};
Timer timer = new Timer();
timer.schedule(task, splashDelay);
}
这是启动画面的Timer
,但我确信您可以将其用于任何您需要的地方。
以下是一些可能有用的链接:
http://developer.android.com/reference/java/util/TimerTask.html
http://android-developers.blogspot.com/2007/11/stitch-in-time.html
如果查看第一个链接,您会看到TimerTask
有一个名为run
的抽象方法。必须覆盖抽象方法。您没有覆盖run方法,因此您的应用程序无法按预期工作。
希望这会有所帮助。祝你好运!