2

Я пытаюсь добавить жест в свой экран предпочтений, но я не получаю никакого положительного результата. Мой вопрос: можем ли мы добавить жест к экрану предпочтений, и если да, то как Я использую нижеследующее код для добавления жеста в предпочтении (не работает для предпочтения, но его работа, чтобы переключаться между два деятельностью)Как добавить жест в экран предпочтений

@Override 
    public boolean onTouchEvent(MotionEvent event) { 
     // TODO Auto-generated method stub 

     return gestureDetector.onTouchEvent(event); 
    } 

    SimpleOnGestureListener simpleOnGestureListener 
    = new SimpleOnGestureListener(){ 


     @Override 
     public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, 
       float velocityY) { 
      String swipe = ""; 
      float sensitvity = 50; 

      // TODO Auto-generated method stub 
      if((e1.getX() - e2.getX()) > sensitvity){ 
       // for left 
      Intent i=new Intent(getApplicationContext(),MyActivity.class); 
       startActivity(i); 
       finish(); 


      }else if((e2.getX() - e1.getX()) > sensitvity){ 
       //for right 
      }else{ 
       swipe += "\n"; 
      } 

      if((e1.getY() - e2.getY()) > sensitvity){ 
       //Swipe Up 
      }else if((e2.getY() - e1.getY()) > sensitvity){ 
       //Swipe Down 
      } 



      return super.onFling(e1, e2, velocityX, velocityY); 
     } 
    }; 

    GestureDetector gestureDetector 
    = new GestureDetector(simpleOnGestureListener); 

ответ

0

первым сделать свой MainActivity implements OnGestureListener затем определить жест

private GestureDetector gestureScanner; 

добавить жест вашего OnCreate и это методы жеста

@Override 
public boolean onTouchEvent(final MotionEvent event) 
{ 
    return gestureScanner.onTouchEvent(event); 
} 
public boolean onDown(final MotionEvent e) 
{ 

    return true; 
} 
public boolean onFling(final MotionEvent e1, final MotionEvent e2, 
     final float velocityX, final float velocityY) 
{ 
    return true; 
} 
public void onLongPress(final MotionEvent e) { 

} 
public boolean onScroll(final MotionEvent e1, final MotionEvent e2, 
     final float distanceX, final float distanceY) 
{ 
    return true; 
} 
public void onShowPress(final MotionEvent e) 
{ 

} 
public boolean onSingleTapUp(final MotionEvent e) 
{ 
    showHide(); // show hide the statusBar On Small Phones prefer to 
    // keep it on Single Tab Cuz On Swipe Down is Kind laggy!!! 
    // WTF !! :D 
    return true; 
} 

теперь, как вы можете видеть на моем onSingleTapUp(final MotionEvent e) я использую, чтобы показать, скрыть строку состояния.

У вас есть шесть различных способов событий прикосновения «события жестов», выберите один из них и наложите на него свое намерение, и когда пользователь «скажет», прокручивает другую активность, запустится.

public boolean onScroll(final MotionEvent e1, final MotionEvent e2, 
     final float distanceX, final float distanceY) 
{ 
     Intent i=new Intent(getApplicationContext(),MyActivity.class); 
      startActivity(i); 
      finish(); 

    return true; 
} 

дайте ему попробовать, и я надеюсь, что это принесет пользу.

+0

Я получил мой ответ –

+0

http://misha.beshkin.lv/android-swipe-gesture-implementation/ –

+0

рад, что ты сделал ... – k0sh

Смежные вопросы