본문 바로가기

[Android/Error] 안드로이드 NullPointerException: WindowInsetsController...

꿈꾸는블로그왕 2021. 2. 4.

FullScreen 화면을 구현 하던 중 WindowManager.LayoutParams.FLAG_FULLSCREEN가 Deprecated 되어서,

아래와 같이 새로운 코드를 추가하던 중 에러가 발생했습니다.

class SplashActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)

        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
            window.insetsController?.hide(WindowInsets.Type.statusBars())
        } else {
            window.setFlags(
                WindowManager.LayoutParams.FLAG_FULLSCREEN,
                WindowManager.LayoutParams.FLAG_FULLSCREEN
            )
        }

        setContentView(R.layout.splash_activity)

    }
}

 

NullPointerException 이라...흠...

 

해당코드를 setContentView(R.layout.splash_activity) 아래에 작성했더니 정상 작동합니다.

class SplashActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.splash_activity)
        
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
            window.insetsController?.hide(WindowInsets.Type.statusBars())
        } else {
            window.setFlags(
                WindowManager.LayoutParams.FLAG_FULLSCREEN,
                WindowManager.LayoutParams.FLAG_FULLSCREEN
            )
        }

    }
}

댓글