我正在android中的foreach / for循环中实现一个计时器。有一个TextField
或TextView
(我不知道使用哪个),每隔30ms填充一个字符串数组中的下一个字符串:
String[] faces = retrieve_pattern().split("\"");
我需要帮助实现这一点。
编辑: 鲍里斯,你的例子有效,但是它打印出所有的字符串,但是我需要只显示一个字符串,并在“一段时间”删除它并显示以下字符串,直到我到达结尾。 TextField中的文本动画排序。
我已经尝试过TimerTask,但是无法让它工作。
答案 0 :(得分:0)
我认为最合适的方法是使用Handler:
public class MyActivity extends Activity {
private String [] mSplits;
private int mSplitIndex;
private Handler updater = new Handler() {
@Override
public void handleMessage(Message msg) {
TextView textView = (TextView)MyActivity.this.findViewById(R.id.text_view);
String text = mSplits[mSplitIndex++];
textView.setText(text);
if (mSplitIndex < mSplits.length) {
sendEmptyMessageDelayed(0, 30);
}
}
};
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.test_split);
updater.sendEmptyMessageDelayed(0, 0));
}
}
我正在写心,所以如果遇到任何问题请回信。