Jak zaimplementować przeciągnij i upuść z pływającym przycisku akcji w Androidzie jak stosowanie flipkartAndroid pływających przycisk akcji z funkcją drag-drop
6
A
Odpowiedz
-1
Draggable Pływający Action buttton:
fabCreate = (FloatingActionButton)view.findViewById(R.id.btnCreate);
fabCreate.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View view, MotionEvent event) {
switch (event.getActionMasked()) {
case MotionEvent.ACTION_DOWN:
dX = view.getX() - event.getRawX();
dY = view.getY() - event.getRawY();
lastAction = MotionEvent.ACTION_DOWN;
break;
case MotionEvent.ACTION_MOVE:
view.setY(event.getRawY() + dY);
view.setX(event.getRawX() + dX);
lastAction = MotionEvent.ACTION_MOVE;
break;
case MotionEvent.ACTION_UP:
if (lastAction == MotionEvent.ACTION_DOWN)
//Toast.makeText(getActivity(), "Clicked!", Toast.LENGTH_SHORT).show();
break;
case MotionEvent.ACTION_BUTTON_PRESS:
intent = new Intent(getActivity(), PostActivity1.class);
startActivity(intent);
default:
return false;
}
return true;
}
});
+0
co powiesz naLongClickListener i onDragListener? – nurettin
0
przeciągnij i upuść dla fab wokół ekran można uzyskać za pomocą setOnTouchListener i zdarzeń odsłuchowych, spróbuj poniżej kodu:
fab.setOnTouchListener(new View.OnTouchListener() {
float startX;
float startRawX;
float distanceX;
int lastAction;
@Override
public boolean onTouch(View view, MotionEvent event) {
switch (event.getActionMasked()) {
case MotionEvent.ACTION_DOWN:
startX = view.getX() - event.getRawX();
startRawX = event.getRawX();
lastAction = MotionEvent.ACTION_DOWN;
break;
case MotionEvent.ACTION_MOVE:
view.setX(event.getRawX() + startX);
view.setY(event.getRawY() + startX);
lastAction = MotionEvent.ACTION_MOVE;
break;
case MotionEvent.ACTION_UP:
distanceX = event.getRawX()-startRawX;
if (Math.abs(distanceX)< 10){
Toast.makeText(getActivity(), "FAB CLICKED", Toast.LENGTH_SHORT).show();
}
break;
case MotionEvent.ACTION_BUTTON_PRESS:
default:
return false;
}
return true;
}
});
Witamy w Stack Overflow! To pytanie jest dość szerokie - jeśli podasz więcej szczegółów, pomoże nam to odpowiedzieć na pytanie. Masz również specjalny kod, który możesz publikować? – jkdev
Możesz również spojrzeć na "powiązane" pytania (na pasku bocznym po prawej stronie tej strony). – jkdev
To nie jest szerokie pytanie. Wspomniałem, że podobnie jak aplikacja typu flipkart nie jest taka sama, funkcja przeciągania i upuszczania z fab – user2126566