g.r*_*ion 7 java android titlebar device-orientation
当我将设备转换为横向时,我希望隐藏标题栏.我已经看到了用于隐藏标题栏的XML选项,以及以下以编程方式执行此操作的示例:
//Remove title bar
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
//Remove notification bar
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
Run Code Online (Sandbox Code Playgroud)
但我使用的configChanges参数orientation和screenSize,因此不重新创建我的活动时再次定向景观(我这样做是因为某些原因).所以我不能使用上面的方法,因为这些调用之前需要进行setContentView().
那么任何想法?谢谢.
dld*_*dnh 14
正在寻找答案,最后来到这里,把各个部分放在一起,他们在这里:
if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) {
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
else {
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
Run Code Online (Sandbox Code Playgroud)
假设您已在清单中定义configChanges了Activity,那么您可以实现您的问题覆盖onConfigurationChanged方法:
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
if(newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
getActionBar().hide();
} else {
getActionBar().show();
}
}
Run Code Online (Sandbox Code Playgroud)
如果使用支持库getSupportActionBar(),getActionBar()则必须使用而不是使用.
小智 3
首先使用以下代码检查您的设备方向
当前配置,用于确定要检索哪些资源等,可从资源的配置对象中获取,如下所示:
getResources().getConfiguration().orientation
Run Code Online (Sandbox Code Playgroud)
然后进行与隐藏标题栏和通知栏相关的必要编码。
| 归档时间: |
|
| 查看次数: |
6939 次 |
| 最近记录: |