android横竖屏

大部分app不需要横屏显示,这样减少了适配和开发成本。我的现在的项目就有这个要求。

布局方式

如果不想让软件在横竖屏之间切换,最简单的办法是在项目的AndroidMainfest.xml中找到你所指定的activity中加上android:screenOrientation的属性,有以下几个参数:

unspecified:默认值 由系统来判断显示方向.判定的策略是和设备相关的,所以不同的设备会有不同的显示方向.
landscape:横屏显示(宽比高要长)
portrait:竖屏显示(高比宽要长)
user:用户当前首选的方向
behind:和该Activity下面的那个Activity的方向一致(在Activity堆栈中的)
sensor:有物理的感应器来决定。如果用户旋转设备这屏幕会横竖屏切换。
nosensor:忽略物理感应器,这样就不会随着用户旋转设备而更改了(”unspecified”设置除外)。

java代码中

在java代码中可以通过
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE)来设置。

总结:
使用java代码的方式,有个时候不保险,但在布局文件中android:screenOrientation=”portrait”
则无论手机如何变动,拥有这个属性的activity都将是竖屏显示。
android:screenOrientation=”landscape”,为横屏显示。


如果需要设置横竖屏的不同显示可参考:

http://www.open-open.com/lib/view/open1328069449468.html

猜你喜欢

转载自blog.csdn.net/zengyongsun/article/details/51766530