1. 程式人生 > >使用handler實現無限迴圈

使用handler實現無限迴圈

不適用執行緒開啟迴圈,並可以重新整理介面

public class MyHandler extends Handler {
    @Override
public void handleMessage(Message msg) {
        super.handleMessage(msg);
        switch (msg.what) {
            case 1:
                Log.i("after", "迴圈中");
myHandler.sendEmptyMessageDelayed(1, 500);
                break;
case 2: Log.i("after", "停止迴圈"); myHandler.removeMessages(1);//移除迴圈資訊 break; default: break; } } }
myHandler = new MyHandler();

btn.setOnClickListener(new View.OnClickListener() { @Overridepublic void onClick(View view) { if
(!isRUnning) { myHandler.sendEmptyMessage(1);btn.setText("停止");isRUnning = true;} else {// myHandler.removeMessages(1);myHandler.sendEmptyMessage(2);btn.setText("開始");isRUnning = false;} } });