![](/img/trans.png)
[英]How to make a Main Thread waiting for the AsyncTask android, without blocking the UI
[英]How to have a smooth animation without blocking Main thread?
基本上,在我的活动中,有两个方法,一个是动画的表面视图,另一个是具有动画的按钮。
最初,我在表面视图中创建了一个异步任务,并在“ onprogressupdate”方法中对其进行了“绘制”。 据我了解,这就是它的含义。
但是,每当我按下该按钮动画时,表面视图就会停止,就好像按钮的动画正在停止表面视图的动画一样,这似乎是合乎逻辑的。
为了克服这个问题,我将“抽奖”放回“后台运行”中。 我感觉这显然是错误的。 有没有办法我可以运行两个动画而又不会互相阻塞?
您不应从UI线程外部访问Android UI工具包。 如果要直接从UI界面外部操作View
,则应改用View.post(Runnable)
。 例如,
public void onClick(View v) {
new Thread(new Runnable() {
public void run() {
mButton.post(new Runnable() {
public void run() {
// do something here
}
});
}
}).start();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.