2016-07-12 2 views
1

동영상이 전체 화면 모드 일 때 youtube과 같은 소프트 키 (집, 뒤로, 메뉴)를 숨기고 표시하고 싶습니다. 아래 코드를 사용하고 있습니다.Android : 부드러운 키 숨기기

getWindow().getDecorView().setSystemUiVisibility(
         View.SYSTEM_UI_FLAG_LAYOUT_STABLE 
           | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION 
           | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN 
           | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION 
           | View.SYSTEM_UI_FLAG_FULLSCREEN 
           | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); 

하지만 youtube처럼되지 않습니다, 그것은 숨기기와 쇼에 전체보기를 방해.

나는 뭔가를 놓친다는 것을 알고있다. 몰입 모드를 비활성화하면, 다음과 같이

private void disableImmersiveMode() { 

    ((FrameLayout) mToolbar.getParent()).setFitsSystemWindows(true); 

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { 
     mDecorView.setSystemUiVisibility(
       View.SYSTEM_UI_FLAG_LAYOUT_STABLE 
         | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION 
         | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN); 
    } 

이런 식으로해야합니다, 당신은 볼 수 :하지만 나는

답변

0

이것 봐,

void enableImmersiveMode() { 

    ((FrameLayout) mToolbar.getParent()).setFitsSystemWindows(false); 

    // True immersive mode is available only for android API 19 and above, 
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { 
     mDecorView.setSystemUiVisibility(
       View.SYSTEM_UI_FLAG_LAYOUT_STABLE 
         | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION 
         | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN 
         | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION // hide nav bar 
         | View.SYSTEM_UI_FLAG_FULLSCREEN // hide status bar 
         | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); 

    } 

UPDATE ... 놓친 거지하지 않는 것 enableImmersiveMode()의 첫 번째 호출을 저크합니다.

+0

같은 상황이 만들어 ... 숨기기 및 표시 .. –

+0

에 전체보기를 흔들어 @FaisalAhsan Pls는 위의 내 업데이 트를 확인합니다. 그 행동이 지금 무엇인지 알려주세요. – Tony

0

모두 당신이 원하는 것은 몰입 형 모드입니다. 액티비티에서 아래 코드를 시도하십시오.

@Override 
    public void onWindowFocusChanged(boolean hasFocus) { 
     super.onWindowFocusChanged(hasFocus); 
     if (hasFocus) { 
      getWindow().getDecorView().setSystemUiVisibility(
        View.SYSTEM_UI_FLAG_LAYOUT_STABLE 
          | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION 
          | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN 
          | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION 
          | View.SYSTEM_UI_FLAG_FULLSCREEN 
          | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); 
     } 
    } 
관련 문제