我的问题是:我写了一个小 android 应用程序,它使用了许多 ImageViews。他们的图像必须在代码中更改。到目前为止它运行良好,但我想添加一种显示正确答案的算法(这是一个游戏)。它们应该一个接一个地出现。
public void x (int current,final View v)
{
c = current;
if(attached[current])
{
apply_change(c);
}
if(current < 34)
{
if(attached[current+1])
{
new java.util.Timer().schedule(new java.util.TimerTask(){
public void run(){
x(c+1,v);
}},500);
}
else
{
x(c+1,v);
}
}
else
new java.util.Timer().schedule(new java.util.TimerTask(){
public void run(){
//NewGame_Click(v);
finished = true;
}},1);
}
从这些线程中,我无法更改 ImageViews (CalledFromWrongThreadException) 的图像。所以我试着这样做:
while(!finished)
{
akt();
}
在我的 UI 线程中。问题是,我的 akt(); 功能(它改变图像)运行,但在不是所有的定时器线程完成之前,我的调试电话屏幕上什么也看不到。
我究竟做错了什么?