この問題があります。私はTextView
を別のスレッドから更新しようとしています。Android runOnUiThreadが実行されていません
私はさまざまなソリューションを試してみましたが、どれも役に立たないようでした。私のwhileループのコードでは、常に "Started New Loop"という文字が印刷されていますが、それはそれ以降ではありません。runOnUiThread
他のスレッドからTextView
を更新する方法を教えてもらえますか?
//second thread
protected void startKakkosThread() {
Thread t2 = new Thread() {
public void run() {
while (true) {
System.out.println("Started new loop");
runOnUiThread(new Runnable() {
@Override
public void run() {
try {
if(rullaavaNumero >= 0) {
rullaavaNumero--;
System.out.println(rullaavaNumero);
pelaajanPisteetTeksi.setText("" + rullaavaNumero);
sleep(1000);
}else{
rullaavaNumero = 9;
System.out.println(rullaavaNumero);
pelaajanPisteetTeksi.setText("" + rullaavaNumero);
sleep(1000);
}
}catch (InterruptedException e){
e.printStackTrace();
}
}
});
}
}
};
t2.start();
}
私はあなたを思う:私はそれはあなたのコード行は次のようになりますので、そうでなければ、
-1
までカウントを取得する場合は、あなたが=
を除去することによって、次の行を修正する必要があることを、あなたは9
から0
までカウントするとします代わりに 'Handler'とおそらく' postDelayed'を使うべきです –これにはAsyncTaskの使用を考慮する必要があります。 – JoxTraex