android如何在代码中判断横竖屏
发布网友
发布时间:2022-04-24 20:16
我来回答
共1个回答
热心网友
时间:2023-10-09 14:54
Android中判断横竖屏是通过Configuration
这个类来判断的。
1.
Configuration.ORIENTATION_
LANDSCAPE
表示横屏。
2.
Configuration.ORIENTATION_PORTRAIT表示竖屏。
以下是完整代码:
public
boolean
isScreenChange()
{
Configuration
mConfiguration
=
context.getResources().getConfiguration();
//获取设置的配置信息
int
ori
=
mConfiguration.
orientation
;
//获取屏幕方向
if(ori
==
Configuration.ORIENTATION_LANDSCAPE){
//横屏
return
true;
}else
if(ori
==
Configuration.ORIENTATION_PORTRAIT){
//竖屏
return
false;
}
return
false;
}
避免在转屏时重启Activity
android中每次屏幕方向切换时都会重启Activity,所以应该在Activity销毁前保存当前活动的状态,在Activity再次
Create的时候载入配置,那样,进行中的游戏就不会自动重启了!
要避免在转屏时重启Activity,可以通过在AndroidManifest.
xml文件
中重新定义方向(给每个Activity加上 android:configChanges=”keyboardHidden|orientation”属性)。
在需要控制屏幕显示方向的Activity中重写 onConfigurationChanged(Configuration
newConfig)方法,这样在转屏时就不会重启Activity了。