我设置了事件监听器,例如:setOnClickListener
like this
Button stopBtn = (Button)findViewById(R.id.stop);
stopBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
doMagic();
}
});
如果未按下按钮,我想将此侦听器设置为 10 秒的超时事件。用例:我button1
激活了这个stopBtn
监听器 10 秒,如果超时,它会被停用,我需要按下button1
才能stopBtn
再次激活。
我可能做错了:
final Handler myHandler = new Handler();
startBtn = (Button)findViewById(R.id.start);
myHandler.postDelayed(new Runnable() {
public void run() {
startBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.i(TAG,"runned");
}
});
}
}, 10000);
10 秒后我仍然可以单击它,这可能是因为事件侦听器仍然附加。即使我不知道它是否被解雇,我该如何分离它。