Die*_*ego 6 android punctuation runnable timertask android-runonuithread
不知何故它不起作用,据我说它应该是这样的:
public void Splash(){
Timer timer= new Timer();
timer.schedule(new TimerTask(){
MexGame.this.runOnUiThread(new Runnable() {
public void run(){
SplashImage.setImageDrawable(aktieknop);
} //Closes run()
}); //Closes runOnUiThread((){})
},SplashTime); //Closes the Timeratask((){})
} //closes Splash()
Run Code Online (Sandbox Code Playgroud)
有人知道我错过了什么吗?
正式评论 我知道愚蠢的问题,或者我正在做一些不可能的事情,但我尝试了所有合乎逻辑的可能性.所以可能遗漏了一些东西,或者我正在尝试做一些不可能的事情.你能帮帮我吗?我正在尝试使用以下代码,但这会产生令牌问题:
Timer timer= new Timer();
timer.schedule(new TimerTask(){
runOnUiThread(new Runnable() {
public void run(){
SplashImage.setImageDrawable(aktieknop);}
});}
},SplashTime);
Run Code Online (Sandbox Code Playgroud)
如果我阻止了runOnUiThread,它会崩溃,因为我正在尝试从另一个线程调整UI,但至少没有令牌问题,任何人都有任何想法?:
Timer timer= new Timer();
timer.schedule(new TimerTask(){
// runOnUiThread(new Runnable() {
public void run(){
SplashImage.setImageDrawable(aktieknop);}
// });}
},SplashTime);
Run Code Online (Sandbox Code Playgroud)
THe*_*per 10
TimerTask和Runnable都要求您实现run方法,因此您需要两种run方法.
如果将Runnable的构造与TimerTask的构造分开,您的代码也将更容易阅读.
final Runnable setImageRunnable = new Runnable() {
public void run() {
splashImage.setImageDrawable(aktieknop);
}
};
TimerTask task = new TimerTask(){
public void run() {
getActivity().runOnUiThread(setImageRunnable);
}
};
Timer timer = new Timer();
timer.schedule(task, splashTime);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10988 次 |
| 最近记录: |