多くの (初心者) にとって興味深い問題に遭遇しました。コードをお見せしましょう:
startButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
startButton.setVisibility(View.GONE);
if (!started) {
started = true;
timer.start();
information.append("Start 1\n");
tester1.start();
if (cores >= 2) {
information.append("Start 2\n");
tester2.start();
}
if (cores >= 3) {
information.append("Start 3\n");
tester3.start();
}
if (cores >= 4) {
information.append("Start 4\n");
tester4.start();
}
}
}
});
timer であり、すべてのテスターは以前に宣言されたスレッドです。情報は TextView です。
問題は、アプリを実行すると、スレッドの終了に 10 秒かかっても、スレッドの終了後にテキストビューが変更されることです。これは、エミュレーター (android 2.3) と実際の (android 4.0) デバイスで発生します。奇妙なことに、スレッドはほぼ同時に開始されます。