有时候调用setText之后发现TextView并不更新内容,在查过资料之后发现是Andorid UI线程相关问题,对于Android线程现在并不了解,暂时先记录一下解决的办法,等到了解了Android的线程相关再来补上原理。
解决办法:
//在类里声明一个Handler
Handler mTimeHandler = new Handler() {
public void handleMessage(android.os.Message msg) {
if (msg.what == 0) {
myTextView.setText(textInfo); //View.ininvalidate()
sendEmptyMessageDelayed(0, 1000);
}
}
};
//在你的onCreate的类似的方法里面启动这个Handler就可以了:
mTimeHandler.sendEmptyMessageDelayed(0, 1000);
同理也可以用到其他View的刷新上。