android - 以固定的时间间隔更改 Android UI
问题描述
主要动机是非常基本的:暂停循环使 UI 发生变化,再次暂停使 UI 更改为动态创建的 View(s) 并手动将 id(s) 分配给视图。
Thread.sleep() 不工作
for(int i=0;i<n;i++){
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
@SuppressLint("ResourceType") Button mButton = (Button) findViewById(i);
mButton.setBackgroundColor(Color.parseColor("#ABCDEF"));
}
}, 1000);
}
使用 Handler 也不起作用。当 Handler 被放入循环时,它总是取循环的最后一个值,即 n-1 总是。
解决方案
我认为你必须澄清这个问题并详细说明你所说的睡眠不起作用>>>你以这种方式使用它吗?
Thread.sleep(1000); // do nothing for 1000 miliseconds
你可以试试
Thread.wait(sleeptime);//Sample Thread.wait(1000); 1 second sleep
但总的来说延迟android中的主线程不是很好的参考java-delay-wait