基本上,在我的活动中,有两种方法,一种是动画的表面视图,另一种是具有动画的按钮。
最初我在表面视图中创建了一个异步任务,并在“onprogressupdate”方法中让它“绘制”。据我了解,这就是它的目的。
但是,每当我按下按钮时,表面视图就会停止,就好像按钮的动画正在停止表面视图的动画一样,这似乎是合乎逻辑的。
为了克服这个问题,我将“平局”放回“后台运行”。我有一种感觉,这显然是错误的。有没有办法可以运行这两个动画而不会互相阻塞?
基本上,在我的活动中,有两种方法,一种是动画的表面视图,另一种是具有动画的按钮。
最初我在表面视图中创建了一个异步任务,并在“onprogressupdate”方法中让它“绘制”。据我了解,这就是它的目的。
但是,每当我按下按钮时,表面视图就会停止,就好像按钮的动画正在停止表面视图的动画一样,这似乎是合乎逻辑的。
为了克服这个问题,我将“平局”放回“后台运行”。我有一种感觉,这显然是错误的。有没有办法可以运行这两个动画而不会互相阻塞?
您不应从 UI 线程外部访问 Android UI 工具包。如果您想View
直接从 UI thrad 外部操作 a,则应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();
}