zoukankan      html  css  js  c++  java
  • 【Android】解决Android横竖屏切换数据丢失问题的方法

    解决方案1:在Androidmanifest.xml的activity标签中加入android:screenOrientation="portrait",可以屏蔽横屏

    <activity android:name=".MainActivity"
                 android:screenOrientation="portrait"
                >
    </activity>

    screenOrientation有如下选项:

    1.unspecified 默认值,由系统判断状态自动切换

    2.landscape 横屏

    3. portrait 竖屏

    4.user 用户当前设置的orientation值

    5. behind 下一个要显示的Activity的orientation值

    6. sensor 使用传感器 传感器的方向

    7. nosensor 不使用传感器 基本等同于unspecified

    解决方案2:在Androidmanifest.xml的activity标签中加入android:configChanges="orientation|keyboardHidden|screenSize"

    <activity android:name=".MainActivity"
                android:configChanges="orientation|keyboardHidden|screenSize"
                >
    </activity>

    configChanges属性可以设置多个值,中间使用竖线分割;

    1. orientation 屏幕在纵向和横向间旋转

    2.keyboardHidden 键盘显示或隐藏

    3.screenSize 屏幕大小改变了

    4.fontScale 用户变更了首选的字体大小

    5.locale 用户选择了不同的语言设定

    6.keyboard 键盘类型变更,例如手机从12键盘切换到全键盘 7.touchscreen或navigation 键盘或导航方式变化,一般不会发生这样的事件

    之前网上查到很多都是说设置了“orientation“和”keyboardHidden”属性,但是效果并没有用,需要增加设置screenSize三个值才行。

    如果只设置”orientation|screenSize”,会发生竖屏变横屏生命周期会有先销毁后重新onCreate,如果是横屏变竖屏生命周期方法不会被回调!

  • 相关阅读:
    24-反转链表
    23-链表中环的入口节点
    22-链表中倒数第k个节点
    21-调整数组顺序使奇数位于偶数前面
    18-删除链表的节点
    17-打印从1到最大的n位数
    16-数值的整数次方
    15-二进制中1的个数
    14-剪绳子
    13-机器人的运动范围
  • 原文地址:https://www.cnblogs.com/mqxs/p/8504561.html
Copyright © 2011-2022 走看看