在android中设置延迟

Tik*_*aka 3 android counter for-loop

我想在我的应用程序中显示1到9个数字作为计数器


TextView te=(TextView)findViewById(R.id.text);

for(int i=0;i<10;i++ ){ try { te.setText("Number"+i); Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } }
Run Code Online (Sandbox Code Playgroud)

但这并没有给我想要的我怎么能这样做
谢谢你

waq*_*lam 10

永远不要在UI线程上放置延迟.相反,使用Handler及其postDelayed方法定期执行操作.例如:

//define 'int i = 10;' at global level
final Handler handler = new Handler();
handler.post(new Runnable() {
    @Override
    public void run() {
        te.setText("Number"+i);
        i--;
        handler.postDelayed(this, 1000);
    }
});
Run Code Online (Sandbox Code Playgroud)