0
スピナーをダブルタップすると2つのメニューが表示されます。ダブルタップを無効にする方法は?アンドロイドでスピナーのダブルタップを無効にするにはどうすればよいですか?
private static final int CLICK_DELAY = 500;
private long lastMenuClickTime = 0;
actionsSpinner.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
if (SystemClock.elapsedRealtime() - lastMenuClickTime > CLICK_DELAY) {
lastMenuClickTime = SystemClock.elapsedRealtime();
return false;
}
}
return true;
}
});
以下のように
はTouchListeners
を追加しようとしたが、これは、クリック操作を実行するには、いくつかの遅延を追加し、主な問題は、CLICK_DELAYは動作しませんした後も最初のクリックです。
私はスピナーのクリックでdisableTouch()をフックすることはできません! – kumar
編集された回答、ご迷惑をおかけして申し訳ございません。あなたの 'onTouch()'で 'disableTouch()'を呼び出してください。 –
disableTouch()を呼び出すのはポイントですか?スピナーを作成した後に呼び出すと、作成後CLICK_DELAY後にスピナーが有効になるため、使用はありません。あなたはそれをサポートしていないので、あなたはonClickListenerでそれを呼び出すことはできません! – kumar