背景がランダムな間隔で色が変わる実験アプリを構築しています。
私は背景の変更にこだわっています。
背景色を変更する作業コードがありますが、それをスレッド/トライ アンド キャッチ ブラケットに入れると、アプリケーションは強制的に閉じられ、エラーは発生しませんか?
oncreate メソッドで使用すると機能するコードは次のとおりです。
View view = this.getWindow().getDecorView();
view.setBackgroundColor(Color.RED);
しかし、1秒間「スリープ」させてから赤に変更したい場合、爆撃します。
このメソッドは oncreate とは別のメソッドであり、そこから呼び出され、何らかの理由で機能しないことに注意してください。
public void changeBackground(final View v){
Thread timer = new Thread(){
public void run(){
try{
sleep(1000);
}catch (InterruptedException e) {
e.printStackTrace();
}finally{
v.setBackgroundColor(Color.RED);
}
}
};
timer.start();
}
私は何を間違っていますか?必要なもの: アプリが起動したら、1 秒間待機してから、爆発することなく背景色を変更する必要があります。
前もって感謝します!