1

通常情况下,为了使我的应用程序全屏的onCreate内,setContentView之前,我做使Android应用程序全屏横向模式下仅

requestWindowFeature(Window.FEATURE_NO_TITLE); 
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); 

但我有一个情况我需要能够在横向全屏 - 但不是肖像。但是,下面的举动将引发setContentView的例外。那么我如何正确地做到这一点?

@Override 
    public void onConfigurationChanged(Configuration newConfig) { 
     super.onConfigurationChanged(newConfig); 
     if(newConfig.orientation==Configuration.ORIENTATION_PORTRAIT){ 
      attachViewPager(); 
     }else{ 
      requestWindowFeature(Window.FEATURE_NO_TITLE); 
      getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); 
      detachViewPager(); 
     } 
    } 

回答

0

试试这个,也许它会帮助你

if (Build.VERSION.SDK_INT < 16) { 
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
        WindowManager.LayoutParams.FLAG_FULLSCREEN); 
} 
+0

?那么后来的版本会发生什么?我正在测试运行棒棒糖的Galaxy S5。并且默认情况下,我不会在全景中获得全屏。 – learner

+0

我没有尝试旧版本,但m确定如果您使用requestWindowFeature(Window.FEATURE_NO_TITLE);它会为他们工作 –

+0

感谢您的帮助。但是你真的误解了这个问题。我的应用程序可以在纵向和横向模式下运行。当手机处于横向模式时,我想要全屏;当它不处于横向模式时,我**不需要全屏。我通过重写'onConfigurationChanged'来控制方向,因为其他原因,比如问题中显示的'attachViewPager'。 – learner

相关问题