2013-06-27 3 views
0

Я хотел бы использовать настройку активности SystemUiHider для создания интерфейса, в котором некоторые элементы в верхнем и нижнем меню скрыты на свитках вниз. Но раскрывается при прикосновении и прокручивается вверх.systemuihider со скрытием на прокрутке

по умолчанию SystemUiHider имеет этот метод, чтобы сделать обнаружение жестов

// Set up the user interaction to manually show or hide the system UI. 
    contentView.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      if (TOGGLE_ON_CLICK) { 
       mSystemUiHider.toggle(); 
      } else { 
       mSystemUiHider.show(); 
      } 
     } 

     //want an onscrolldown listener 
    }); 

как бы я модифицирую это, чтобы обнаружить такую ​​информацию, я хочу. Может ли OnClickListener обнаруживать свитки? Или мне нужен другой тип слушателя или пользовательский жест.

+2

я бы переопределить 'onTouchEvent (MotionEvent эв)' и проверить, было ли событие прокрутки вверх или вниз и действовать. –

ответ

1

Я не уверен, если я понял correctly.But, я предполагаю, что вы ищете обнаружения жеста. В этом случае установите onTouchListener для него и Override onTouchListener

@Override 
public boolean onTouch(View v, MotionEvent event) { 

    switch (event.getAction()) 
    { 
    case MotionEvent.ACTION_DOWN: 
    { 
     canHandleMove=true; 
     lastY = touchevent.getY(); 
     Log.d("tag", "touch down at "+lastX); 
     break; 
    } 

    case MotionEvent.ACTION_UP: 
    case MotionEvent.ACTION_MOVE: 
    { 
     if(canHandleMove) 
     { 
     canHandleMove=false; 
     float currentY = event.getY(); 
     Log.d("tag", "touch up at "+currentY); 

     float diff=((lastY<currentY)?(currentY-lastY):(lastY-currentY)); 
     if(diff>10) 
     { 
     if (lastY < currentY) 
     { 
      // Move Up 
     } 
     if (lastY > currentY) 
     { 
      // Move Down 
     } 
     } 
     break; 
     } 
    } 
    } 
    return true; 
} 
2

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

https://github.com/LarsWerkman/QuickReturnListView