마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드 스튜디오 풀스크린(Full screen) 제발 좀 도와주세요 멘붕옵니다ㅠ

0 추천
안녕하세요 안드로이드 스튜디오로 앱을 제작중인데

풀스크린을 하는것 때문에 근 일주일째 고민하고 있습니다. 멘붕오네요 제발좀 도와주세요ㅠ

제가 고민하는것은

 

supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);

 

이것으로 타이틀바와 상태바를 가린후에 하단에 있는

네비게이션바를 가리는것 때문입니다.

인터넷을 뒤지고 유튜브 구글 다 뒤져서 해봤는데 하단에 있는

네비게이션바가 가려진 후에 풀스크린이 되지 않고 그 자리가 하얀색으로

여백이 생긴다는것입니다.

요즘 출시된 모든 게임들 다른 모든 인디게임들도 잘 가려지고 여백없이 꽉꽉 채워서

풀스크린이 되던데 전 이 네비게이션바가 사라진 후에 이 여백이 매꿔지질 않습니다.ㅠㅠ

게임 출시하신 고수님들 이문제좀 제발 도와주세요 이것때문에 진도가 안나가요ㅠㅠ
익명사용자 님이 2019년 5월 30일 질문

1개의 답변

0 추천

AndroidManifest.xml 에 보시면 Activity를 등록하는 란이 있습니다.

<activity
    android:name=".SplashActivity"
    android:theme="@style/SplashTheme"
    android:screenOrientation="portrait">

    <intent-filter>
        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

이런식으로. 저기서 테마 보시면 저는 SplashTheme 라고 되어있는데 저기 타고 들어가면

<style name="SplashTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="colorAccent">#0A0</item>
    <item name="android:windowFullscreen">true</item>
</style>

저는 이런식으로 설정해놨거든요. 이거 참고하시면 도움이 될 듯 합니다.

 

yt0229 (1,070 포인트) 님이 2019년 5월 30일 답변
뭘 해도 네비게이션바 가 있던 자리에 있던 하얀 여백이 채워지질 않아요 ㅠㅠ

private View     decorView;
     private int    uiOption;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
        getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
        setVolumeControlStream(AudioManager.STREAM_MUSIC);
        setContentView(new playView(this));

        decorView = getWindow().getDecorView();
              uiOption = getWindow().getDecorView().getSystemUiVisibility();
              if( Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH )
               uiOption |= View.SYSTEM_UI_FLAG_HIDE_NAVIGATION;
               if( Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN )
               uiOption |= View.SYSTEM_UI_FLAG_FULLSCREEN;
               if( Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT )
               uiOption |= View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY;

    }

    @Override
     public void onWindowFocusChanged(boolean hasFocus) {
          // TODO Auto-generated method stub
            super.onWindowFocusChanged(hasFocus);
           if( hasFocus ) {
        decorView.setSystemUiVisibility( uiOption );
           }
         }

님이 알려주신 데로 style을 바꿔봐도 여백이 안채워지구요 ㅠㅠ
...