Android之横屏竖屏显示问题
1.採用不同的布局文件
选中layout(目录) Ctrl+C (复制)
选中res(目录) Ctrl +V(粘贴)
创建layout-land横屏显示的layout
同理创建layout-port竖屏显示的layout
图片横屏竖屏
选中drawable-xhdpi Ctrl+C
选中res Ctrl + V
创建drawable-land-xhdpi
其它分辨率的也一样
字符串
values-land
values-port
另外:(layout目录也能够使用hdip,mdip等keyword命名如layout-hdip,layout-mdip)
依据分辨率不同显示不同的layout布局
2 强制横屏竖屏显示(不依据手机传感器调整)
在<activity 里面增加:
android:screenOrientation="Landscape"//横屏//portrait竖屏
注意:
在横屏竖屏切换过程中,Activity会被又一次创建
onCreate方法会又一次运行
假设没有id的组件如编辑框等则横屏填写的编辑框中的数据,写到一半后假设竖屏显示,
数据会丢失
谷歌解决方式:
假设拥有id
会在第一次创建Activity。运行完onCreate()方法之后把id组件中相应的值暂时保存存起来,
在旋转后再次创建Activity时
可是是在 运行完onCreate()方法之后!
在res下创建目录layout-land
在该目录下写入的layout(xml文件)横屏的时候系统自己主动选择显示的layout
同理:
在res下创建目录layout-port
在该目录下写入的layout(xml文件)即竖屏的时候系统自己主动选择显示的layout
快捷创建方法:
选中layout(目录) Ctrl+C (复制)
选中res(目录) Ctrl +V(粘贴)
创建layout-land横屏显示的layout
同理创建layout-port竖屏显示的layout
图片横屏竖屏
选中drawable-xhdpi Ctrl+C
选中res Ctrl + V
创建drawable-land-xhdpi
其它分辨率的也一样
字符串
values-land
values-port
另外:(layout目录也能够使用hdip,mdip等keyword命名如layout-hdip,layout-mdip)
依据分辨率不同显示不同的layout布局
2 强制横屏竖屏显示(不依据手机传感器调整)
在<activity 里面增加:
android:screenOrientation="Landscape"//横屏//portrait竖屏
注意:
在横屏竖屏切换过程中,Activity会被又一次创建
onCreate方法会又一次运行
假设没有id的组件如编辑框等则横屏填写的编辑框中的数据,写到一半后假设竖屏显示,
数据会丢失
谷歌解决方式:
假设拥有id
会在第一次创建Activity。运行完onCreate()方法之后把id组件中相应的值暂时保存存起来,
在旋转后再次创建Activity时
可是是在 运行完onCreate()方法之后!
!!!
!
运行完之后!
!!
!
依据id找到相应的值填写上去