Мне нужно сделать перетаскивание в Android. Я добавил код для навигации по экрану перетаскивания. Что не так гладко, как Android по умолчанию. Следующий код обеспечивает навигацию перетаскиванием слева направо и справа налево, но проблема заключается в том, что когда вы нажимаете справа, а затем влево, экран также перемещается. Каков правильный способ ее достижения. Нужно ли мне работать с тем же кодом при вычислении значений X?
Ниже кода.
// On Drag Navigation
public boolean onTouch(View arg0, MotionEvent arg1) {
// Get the action that was done on this touch event
switch (arg1.getAction())
{
case MotionEvent.ACTION_DOWN:
{
// store the X value when the user's finger was pressed down
downXValue = arg1.getX();
break;
}
case MotionEvent.ACTION_UP:
{
// Get the X value when the user released his/her finger
float currentX = arg1.getX();
// Going Backward: pushing stuff to the right
if (downXValue < currentX)
{
Intent lIntent = new Intent(getApplicationContext(), previousScreen.class);
startActivity(lIntent);
finish();
}
// Going Forward: pushing stuff to the left
if (downXValue > currentX)
{
Intent lIntent = new Intent(getApplicationContext(), nextScreen.class);
startActivity(lIntent);
finish();
}
break;
}
}
}
Пожалуйста, укажите правильный способ его достижения.
заранее спасибо