画面の色を変更するためのコードがあります。Androidのスレッドを停止する
しかし、私はこのスレッドを停止する方法がわからない:
lin = (LinearLayout)findViewById(R.id.mainlayout);
new Thread(new Runnable() {
public void run() {
while (finalStatus < 1) {
try {
Thread.sleep(500);
} catch (InterruptedException e) {
e.printStackTrace();
}
colorHandler.post(new Runnable() {
public void run() {
if(flag)
{
lin.setBackgroundColor(Color.BLUE);
flag = false;
}
else
{
lin.setBackgroundColor(Color.RED);
flag = true;
}
}
});
}
}
}).start();
私は入れてみました:
Button btn = (Button) findViewById(R.id.button1);
btn.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
Toast.makeText(getBaseContext(),"STOP",Toast.LENGTH_SHORT).show();
finalStatus=1;
lin.setBackgroundColor(Color.BLACK);
}
});
とスレッドは停止しますが、画面が赤、または青で、I黒が必要です。
さらに、このスレッドを停止した後にこのスレッドを開始するにはどうすればよいですか?
サービスはありません。スレッドはいくつかあります。中断したい場合は、finalStatusを1に変更してください。私が紛失しているものがありますか?バックグラウンドを更新するコードにはループがないため、すぐに終了します。 – azertiti
ありがとう、私の編集を参照してください – Gold
私の答えを参照してください。 – azertiti