1
私のアクティビティでドラッグすることができるFloatingActionButton(FAB)が必要です。しかし、あなたもそれをクリックすることができます。私はこれをコピーし、別のポストから:Android FABドラッグ&ドロップ
fab.setOnTouchListener(new View.OnTouchListener() {
float startX;
int lastAction;
@Override
public boolean onTouch(View view, MotionEvent event) {
switch (event.getActionMasked()) {
case MotionEvent.ACTION_DOWN:
startX = view.getX() - event.getRawX();
lastAction = MotionEvent.ACTION_DOWN;
break;
case MotionEvent.ACTION_MOVE:
view.setX(event.getRawX() + startX);
lastAction = MotionEvent.ACTION_MOVE;
break;
case MotionEvent.ACTION_UP:
if (lastAction == MotionEvent.ACTION_DOWN){
edit();
}
break;
case MotionEvent.ACTION_BUTTON_PRESS:
default:
return false;
}
return true;
}
});
問題がある:あなたがそれをクリックしますしばしば、それがクリックとしてではなく動きとしてそれを認識しません。これはあまり正確ではありません。どのようにコードを変更してより良いものにすることができますか?