0
私はいくつかのコードを数秒ごとに実行するために単純なRunnableを取得しようとしていますが、実行することはできますが、停止することはできません。以下のコードは、2つのコールstartDbChecking()
とstopDbChecking()
を示しています。私はコードブロックにそれらを配置して、私が試みていることを示しています - コードの設定方法ではありません。Android Java Runnableは停止しません
public class MainActivity extends TabActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
startDbChecking(); // will run this no problem
stopDbChecking(); // but will not stop
}
public void startDbChecking() {
handler.post(runnableCode);
}
public void stopDbChecking() {
handler.removeCallbacks(runnableCode);
}
private Runnable runnableCode = new Runnable() {
@Override
public void run() {
// Do something here on the main thread
System.out.println("OK");
handler.postDelayed(runnableCode, 2000);
}
};
}
を停止するので、あなたは 'onStart'と' onStop'で 'stopDbChecking'で' startDbChecking'を呼び出しているし、まだそれが動作しませんか? – pskink
はい。私はそれをやめようとするまでうまくいくと思う。 – user7763438
[this](http://pastebin.com/CLW5hrAU)が動作していることを確認してください – pskink