状況によっては更新したいTextViewがあると思います。1〜2秒ごとに状況をチェックし、必要に応じてTextViewのテキストを更新するスレッドが必要です。何か案が?
質問する
4356 次
3 に答える
4
私はこのようなことをします:
public class MyClass {
private Handler hUpdate;
private Runnable rUpdate;
public MyClass() { // Constructor
hUpdate = new Handler();
rUpdate = new Runnable() {
// Do your GUI updates here
};
Thread tUpdate = new Thread() {
public void run() {
while(true) {
hUpdate.post(rUpdate);
sleep(500);
}
}
}
tUpdate.start();
}
}
于 2013-02-03T01:50:15.037 に答える
3
GUIでハンドラーを使用できます。
Handler hnd = new Handler() {
public void handleMessage(Message msg) {
if ( msg.what == 101 ) {
//update textview
}
}
}
hndをスレッドに渡し、スレッドで次のことを行います。
Message m = new Message();
m.what = 101;
hnd.sendMessage(m);
これは、別のスレッドでGUIスレッドへのレポートが必要な作業を行っていることを前提としており、テキストメッセージを送信することもできます。
于 2012-04-04T12:50:05.600 に答える
1
別のスレッドからビューを更新するには、ハンドラーを使用する必要があります。postDelayedを使用すると、遅延を設定できます。ドキュメントを参照してください:
于 2012-04-04T12:46:19.367 に答える