Android手机横竖屏幕切换时Activity的重启问题
16lz
2021-01-23
Android每次屏幕的横竖切换Activity会重新OnCreate 为避免每次切换屏幕方向后重启Activity 可修改AndroidManifest.xml 在activity标签内加入以下属性:
android:configChanges="orientation|keyboardHidden"
再在Activity代码中覆盖onConfigurationChanged函数即可
@Override
public void onConfigurationChanged(Configuration config) {
super.onConfigurationChanged(config);
}
————————-
//设为无标题栏
requestWindowFeature(Window.FEATURE_NO_TITLE);
//设为全屏
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
//设为横屏
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
android:screenOrientation="landscape" //在配置文件中,设为横屏
android:screenOrientation="portrait"//在配置文件中,设为竖屏
或者在res目录下建立layout-land和layout-port目录,相应的layout文件不变,比如main.xml。layout-land是横屏的layout,layout-port是竖屏的layout,其他的不用管模拟器自动寻找
android:configChanges="orientation|keyboardHidden"
再在Activity代码中覆盖onConfigurationChanged函数即可
@Override
public void onConfigurationChanged(Configuration config) {
super.onConfigurationChanged(config);
}
————————-
//设为无标题栏
requestWindowFeature(Window.FEATURE_NO_TITLE);
//设为全屏
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
//设为横屏
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
android:screenOrientation="landscape" //在配置文件中,设为横屏
android:screenOrientation="portrait"//在配置文件中,设为竖屏
或者在res目录下建立layout-land和layout-port目录,相应的layout文件不变,比如main.xml。layout-land是横屏的layout,layout-port是竖屏的layout,其他的不用管模拟器自动寻找
更多相关文章
- 【Android优化】去掉屏幕上方应用程序的名称或标题栏
- android屏幕的那些事之一!
- Android: 模拟器system分区没有可用空间的问题
- Android中通过按键旋转屏幕
- Android调节屏幕亮度分析源码
- 在Android2.2模拟器上安装Android Market
- 手动部署Android-apk应用到模拟器
- 关于安卓屏幕切换的过程
- Android 截取屏幕图片并保存