在做Android开发过程中,横竖屏是一个重要被考虑的事情,有些应用必须要横屏,不能随手机屏幕滑动(常见的大多数应用类软件都是这样);而大多数的游戏类应用,都要求横屏,不随屏幕转换,游戏是为了给用户更大的展示空间。当然,一些需要竖屏的游戏例外,比如腾讯的飞机大战,经典的俄罗斯方块等。
这里,我们简单总结一下,在Android中横竖屏切换的问题。
1、默认横竖屏切换时重新调用Activity的onCreate。这里会出现一个问题,就是重新调用onCreate方法的时候,屏幕上的数据、资源文件等都会重新加载一起,会出现类似闪屏的不好体验效果。
2、在Activity中添加android:configChanges="locale|keyboardHidden|orientation" 属性在横竖屏切换、出现输入法窗口、语言变换时调用Activity的onConfigurationChanged而不再调用onCreate。在配置文件中添加了这个属性之后,屏幕的切换就可以消除重新调用onCreate方法的闪屏现象。
3、在Activity中添加android:screenOrientation="portrait"或者android:screenOrientation="landscape"将保持竖屏或横屏显示,切换横竖屏时将不再调用onCreate或者onConfigurationChanged。这两个属性,分别让程序屏幕保持横屏或者竖屏,不会随手记屏幕方向的改变而改变。
4、这里有一个需要注意的地方:当android:configChanges="orientation"与android:screenOrientation="portrait"(或者android:screenOrientation="landscape")同时存在时,android:configChanges="orientation"属性被忽略。
以上就是对Android使用横竖屏的一些总结,基本涵盖了需要的使用方式和范围,希望帮助到大家!