我正在寫一個小程序來每5秒更新一次TextView。但我無法更新每隔5秒我的TextView的文本,尤其是當它涉及到持續ArrayList的項目,如:C以下代碼使用Timer和ArrayList更新TextView
我下面this教程
public class MainActivity extends Activity {
Timer timer;
MyTimerTask myTimerTask;
List<String> list;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textCounter = (TextView)findViewById(R.id.counter);
timer = new Timer();
myTimerTask = new MyTimerTask();
timer.schedule(myTimerTask, 1000, 5000);
....
list = new ArrayList<String>();
list.add("A");
list.add("B");
list.add("C");
}
class MyTimerTask extends TimerTask {
@Override
public void run() {
runOnUiThread(new Runnable(){
@Override
public void run() {
for(int i=0; i<list.size(); i++) {
textCounter.setText(list.get(i).toString());
}
}});
}}
相反的迭代列表,你爲什麼不設置TextView的有一次在一個文本。 –
不要使用計時器任務它不能正常工作,請使用處理程序。 –
你在哪裏調用timer.start()方法來啓動Timer。 –