2013-06-27 7 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 ev)'를 덮어 쓰고 이벤트가 위 또는 아래로 스크롤하여 작동하는지 확인합니다. –

답변

1

나는 correctly.But을 이해하면, 당신이 제스처 감지 찾고있는 것 같아요 모르겠습니다. 이 경우에 onTouchListener를 설정하고 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