show();
私のトーストを試してみると面白い問題があります。 2つのトーストがtry/catch and Thread.sleep();
で区切られています。この場合、2番目のトースト、toast2
が表示されますが、toast1
は表示されません。トーストはtry/catchの前に表示されませんThread.sleep()
try/catch
を取り除くと、両方のトーストが問題なく表示されます。
toast.show();
がUIスレッドで他の操作と競合する要求を行ったことがあります。私はそれが私がここにあるのと同じ問題であるかどうか疑問に思っていますThread.sleep();
どうすればこの問題を解決できますか?
は、あなたが右の最初の乾杯の後、UIスレッドを一時停止するので、それは を示すことにする機会を持っていない
TestService.java
///Debug - Show a Toast
// Toast does NOT show up
Toast toast1 = Toast.makeText(context,"Service Started", Toast.LENGTH_SHORT);
toast1.show();
//Try to sleep for roughly 2 seconds
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//Debug - Shows a Toast
Toast toast2 = Toast.makeText(context,"Sleep completed", Toast.LENGTH_SHORT);
toast2.show();
これはUIスレッドで実行されていますか? – spatulamania
あなたは何をしなければならないのですか?あなたはUIスレッドが2秒間待つかどうか、またはあなたのコントロールフローが2秒間待たされるようにします。 – Harinder
初めてUIの基本を学ぶ – ingsaurabh