==Android 2.3以前的横竖屏切换==

在Android 2.3平台上,我们可以需要设置界面的横竖屏显示时,可以在AndroidManifest.xml中,对Activity的属性添加以下代码:

android:configChanges="orientation"

同时在Activity中覆写onConfigurationChanged方法

@Override

public void onConfigurationChanged(Configuration newConfig) {

super.onConfigurationChanged(newConfig);

Log.i("TAG","I'm Android 2.3");

}

通过设置,当前Activity在横竖屏切换的时候,便不会重新走Activity的生命周期,而是直接执行onConfigurationChanged()方法里的内容。

==Android 4.0以后的横竖屏切换==

当我们在Android 4.0上像之前那样设置横竖屏时,会发现竟然没有效果,Activity依然走自己的生命周期,这是因为在API level 13以后Android做了修改了,SDK描述如下:

Caution: Beginning with Android 3.2 (API level 13), the "screen size" also changes when the device switches between portrait and landscape orientation. Thus, if you want to prevent runtime restarts due to orientation change when developing for API level 13 or higher (as declared by the minSdkVersion and targetSdkVersion attributes), you must include the "screenSize" value in addition to the "orientation" value. That is, you must decalare android:configChanges="orientation|screenSize". However, if your application targets API level 12 or lower, then your activity always handles this configuration change itself (this configuration change does not restart your activity, even when running on an Android 3.2 or higher device).

也就是说在Android 3.2(API level 13)以后,当设备横竖屏切换时屏幕尺寸也改变了。因此,如果你想在API Level 13或者更高的环境下,像以前那样阻止设备的横竖屏切换,你需要在orientation后加上screenSize。也就说你要像这样声明:android:configChanges="orientation|screenSize"。

也就是说我们现在要在AndroidManifest.xml中的Activity加入以下属性:

android:configChanges="orientation|screenSize"

同时依然要在Activity中覆写onConfigurationChanged方法

@Override

public void onConfigurationChanged(Configuration newConfig) {

super.onConfigurationChanged(newConfig);

Log.i("TAG","I'm Android 4.0");

}

android横竖屏切换方法,Android 4.0 横竖屏切换注意事项相关推荐

  1. android颜色值的表示方法android:background=#FFFFFFFF的意思

    android颜色值的表示方法 android:background="#FFFFFFFF"的意思 Android中的颜色值是通过红(Red).绿(Green).蓝(Blue)三原 ...

  2. 华为手机怎么使用分屏_安卓7.0分屏怎么设置 安卓7.0分屏怎么使用【详解】

    安卓7.0自发布之后,由于系统的开源性,谷歌并没有办法让所有手机都升级.但是也不乏跟进最新安卓7.0系统的厂商,当然也有自己尝试刷第三方安卓7.0系统的网友.根据官方的资料显示,安卓7.0在系统流畅以 ...

  3. android横竖屏切换方法,Android横竖屏切换的生命周期

    关于Android手机横竖屏切换时Activity的生命周期问题,网上有很多相似的文章,大多数都是说明在竖屏切换横屏时Activity会重启一次,而在横屏切换竖屏时Activity会重启两次. 我本身 ...

  4. android 截长图 方法,Android实现截屏与截长图功能

    本文实例为大家分享了Android实现截屏与截长图功能展示的具体代码,供大家参考,具体内容如下 Demo在GitHub的地址:ScreenShoot 在Android开发中,有时候会遇到需要截屏分享到 ...

  5. android隐藏软键盘方法,Android显示和隐藏软键盘方法

    InputMethodManager类 Android中软键盘的管理主要是通过InputMethodManager类来完成的. InputMethodManager对象的获取方法如下: 获取到Inpu ...

  6. android中的add方法,Android中Fragment怎么addView?

    慕勒3428872 Fragment是Android honeycomb 3.0新增的概念,在Android--Fragment介绍.AndroidFragment使用.Android Fragmen ...

  7. android的反调试方法,Android平台融合多特征的APP反调试方法与流程

    本发明涉及Android平台融合多特征的APP反调试方法,属于计算机与信息科学技术领域. 背景技术: 应用程序本身并不具备反调试的功能,但是动态调试是动态分析应用逻辑.动态脱壳等攻击方式所采取的必要手 ...

  8. android 开启子线程方法,android中开启子线程

    AndroidRuntime(673): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example/ ...

  9. android 矢量图片使用方法,Android中的矢量图

    概述 VectorDrawable是通过XML文件中的一系列点,线和曲线及其相关颜色信息定义的. 使用VectorDrawable的主要优点是图像可扩展性. 它可以缩放而不损耗显示质量,这意味着相同的 ...

最新文章

  1. html页面配置xml文件路径,web.xml与index.html
  2. 基于QT Plugin框架结构
  3. Request转发---应用
  4. 查看oracle 的数据文件的版本信息
  5. eclipse ldt update resource
  6. 【OS学习笔记】十九 保护模式六:保户模式下操作系统内核如何加载用户程序并运行
  7. LwIP之动态内存堆
  8. Matplotlib——多图合并
  9. s5p6818/fs4418系统移植实验二 安装fastboot驱动
  10. Android下载文件提示文件不存在。。。 java.io.FileNotFoundException
  11. Apache POI 读取、写入Excel文件教程
  12. Python数据挖掘与可视化探索——以美国人口年收入数据集(income dataset/adult.data)为例
  13. The server encountered an unexpected condition that prevented it from fulfilling the request.(解决思路)
  14. IE6 遇到bug及解决办法
  15. 爬取豆瓣电影Top250影片信息
  16. UART串口通信常用协议对比——rs232、485的区别
  17. 360众测重装上阵,创新服务模式重塑众测新业态
  18. 聊聊语音聊天室app源码实时音视频中的技术难点:回声消除+噪声消除
  19. 基于TCAM 的高速路由查找
  20. 遗传算法(Genetic Algorithm)之deap学习笔记(一): 基础概念

热门文章

  1. Could not find messages which '/home/../msg/Lane.msg' depends on.Did you forget to specify...
  2. ELK详解(一)——ELK基本原理
  3. 一致性hash算法虚拟节点_一致性hash和虚拟节点
  4. L1-007 念数字 (10 分)
  5. HDU2066一个人的旅行(SPFA)
  6. cvCircle函数
  7. 一句话木马及文件上传。
  8. 数据中台项目前期总结
  9. 《华林科纳-半导体工艺》单晶圆清洁工艺
  10. android wear播放视频,剑指苹果Watch!Android Wear也支持视频