PHP

remove actionBar, navigationBar programmatically

미스털이 사용자 2024. 10. 30. 18:19
반응형

알람 관련해서 화면을 만드려고 하는데

1) 위의 액션바

2) 아래의 네비게이션바

2개를 없애려고 한다.

 

사실 이 2개는 일반 어플을 실행할 때 중요한 부분이여서 없으면 안되지만, 알람화면 같이 단순정보를 전달하고 종료하는 경우엔 액션바, 네이게이션바는 필요없다.

 

방법은 아주 간단하다.

    @Override    
    protected void onCreate(Bundle savedInstanceState) {
        //위 상태바 부분 없애기
        requestWindowFeature(getWindow().FEATURE_NO_TITLE);
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

        //아래 네비부분 없애기
        getWindow().getDecorView().setSystemUiVisibility(
                            View.SYSTEM_UI_FLAG_LAYOUT_STABLE
                        |   View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
                        |   View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                        |   View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
                        |   View.SYSTEM_UI_FLAG_FULLSCREEN
                        |   View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
        );

 

액티비티의 onCreate에서 다음과 같이 getWindow를 이용해서 속성값을 설정시키면 된다.

 

<완성화면>

반응형