我是android初学者,我想按顺序打印1 -10个数字,如下所示
1 2 3 4 5 6 7 8 9 10
我想打印这些数字,例如 1 3secs after 2, 3secs after 3,3secs after 4......等等
我编写了如下代码来打印 1-10 但它只显示 10 。
@Override
public void onClick(View v) {
name=((TextView)findViewById(R.id.textView1));
for(int i=0;i<11;i++){
name.setText("hai"+i);
}
请问有什么解决办法吗?
最佳答案
这不起作用,就像这样,因为 onClick()
是在 UI 线程上运行的,会阻止它进行更新,直到 onClick()
返回。虽然
您可以使用 AsyncTask
来解决这个问题,其中 doInBackground()
方法正在执行循环,
通过 publishProgress()
发送要打印的数字,并让 onProgressUpdate()
更新 TextView。
这里是an example AsyncTask
的使用。另请查看 docs这也说明了进度更新。
关于java - 如何在android中的 TextView 中打印1到10个数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5621473/