android对于UI横竖屏已经做了很多工作,这使的应用开发比较的方便。

作为应用开发人员在设计UI前首先需要确定以下几个问题:

- 该UI是否需要支持横竖屏

如果规定只支持横屏或竖屏,只需要在AndroidManifest.xml中为指定的Activity

强行设置为横屏:android:screenOrientation="landscape"

强行设置为竖屏:android:screenOrientation="portrait"

- 要支持横竖屏

首先需要有layout支持,layout-land文件夹横屏的所有layout,layout-port文件夹保存所有竖屏的layout文件,通常把默认的layout文件夹删除,这样可以避免一些不必要的麻烦,两个文件夹下的layout文件夹名必须相同,文件中的控件ID必须相同,其他可以调整,如控件位置,颜色、大小等,一般来说不同风格的屏其屏幕布局应该不同。

完成这些后系统就可以根据当前屏幕调用不同的layout

- 如果只做上一步那么在每次横竖屏切换时会重起activity,会导致软件混乱,如:全局变量,线程,为了避免该问题出现可以在AndroidManifest.xml中为指定的Activity增加以下属性:

android:configChanges="keyboardHidden|orientation"

增加该属性后必须获得其权限,因此需要增加:

uses-permission android:name="android.permission.CHANGE_CONFIGURATION"

同时需要重写public void onConfigurationChanged(Configuration newConfig)


注:在android的UI中很容易导致UI重绘,个人建议对一些关键内容,如:关键全局参数以及线程需要在软件中做特殊处理,防止由于activity重起导致程序混乱

更多相关文章

  1. Android支持的资源
  2. Android导入工程提示 Invalid project description 详解
  3. android drawable文件夹说明
  4. Android(安卓)Jetpack-LiveDataBus使用
  5. 【Android】Android(安卓)中支持的几种传感器
  6. (2016.5.26更新8.0.1失效问题)Android(安卓)Studio上使用Butterk
  7. Android(安卓)SDK Content loader has encountered a problem
  8. 修改Android(安卓)app图标(Android(安卓)Studio)
  9. Android开发笔记之 配置并使用Android支持的库

随机推荐

  1. android 自定义view 实现定制二维码扫描
  2. Android中startService的使用及Service生
  3. Android的电话功能介绍
  4. Android(安卓)跨进程通信(IPC)机制的探索与
  5. Android中使用ViewPager制作广告栏滚屏效
  6. Android动画详细探究
  7. Android市场官方的统计信息
  8. 在Android中加入GOOGLE统计系统
  9. android的上下文菜单---context menu
  10. Android(安卓)AES加密算法及其实现