0%

Android横竖屏设置

横竖屏的设置

在Android的生命周期中,如果我们横竖屏了,那么他将会默认执行销毁和重构Activity界面的一系列操作,这个样子给我们带来了很多麻烦。
同样的屏幕大小变换(低版本安卓不会),键盘出现都会出现这个问题,那如何解决:
我们在Activity设置中设置:
android:configChanges="keyboardHidden|orientation|screenSize"
设置这么一条代码,就可以实现我们的效果了,这样的话呢我们将不会执行那一系列操作(相当于关程序重新打开程序的操作)了,它将会执行新的一个函数:onConfigurationChanged这个函数,我们只需要在这个地方写代码就好了。

如何知道是横竖屏?

其实也很简单,就是判断宽和高就可以了!
例如如下代码:

1
2
3
4
DisplayMetrics dm = new DisplayMetrics();

getWindowManager().getDefaultDisplay().getMetrics(dm);
Log.d("ttt", dm.heightPixels+""+dm.widthPixels);

再就是判断宽和高大小就可以了!

设置一直是横竖屏

其实也很简单,在Activity配置中配置如下项:

1
2
android:screenOrientation="portrait"
android:screenOrientation="landscape"

第一个设置竖屏,第二个设置横屏(只能设置一个!)。