`
stephen830
  • 浏览: 3010543 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

android:configChanges属性

 
阅读更多

 

 

 

 

对android:configChanges属性,一般认为有以下几点:

 

1、不设置Activity的android:configChanges时,切屏会重新调用各个生命周期,切横屏时会执行一次,切竖屏时会执行两次

 

2、设置Activity的android:configChanges="orientation"时,切屏还是会重新调用各个生命周期,切横、竖屏时只会执行一次

 

3、设置Activity的android:configChanges="orientation|keyboardHidden"时,切屏不会重新调用各个生命周期,只会执行onConfigurationChanged方法

但是,自从Android 3.2(API 13),在设置Activity的android:configChanges="orientation|keyboardHidden"后,还是一样 会重新调用各个生命周期的。因为screen size也开始跟着设备的横竖切换而改变。所以,在AndroidManifest.xml里设置的MiniSdkVersion和 TargetSdkVersion属性大于等于13的情况下,如果你想阻止程序在运行时重新加载Activity,除了设置"orientation", 你还必须设置"screenSize"。

解决方法:

AndroidManifest.xml中设置android:configChanges="orientation|screenSize“

 

 

分享到:
评论

相关推荐

    Android如何禁止横屏竖屏的变换

    总的来说,通过在AndroidManifest.xml中正确设置`android:configChanges`属性,并在Activity中忽略配置变化,可以在Android 4.0及以上版本中实现禁止横屏竖屏切换的功能。然而,这种方法可能会导致用户界面在不同...

    android面试宝典.doc

    * 如果不设置 android:configChanges 属性,屏幕方向改变时 Activity 会被重新创建。 * 如果设置 android:configChanges="orientation|keyboardHidden",屏幕方向改变时 Activity 不会被重新创建,只会执行 ...

    互联网公司android面试题和答案.pdf

    如果设置 android:configChanges="orientation|keyboardHidden" 属性,那么横竖屏切换时 Activity 不会重新调用生命周期,只会执行 onConfigurationChanged 方法。 如果我们想将一个 Activity 设置成窗口的样式,...

    android edittext不弹出软键盘三种方法

    android:configChanges="orientation|keyboardHidden"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> ...

    Android 销毁当前的Activity

    让 Android 横竖屏切换时不销毁当前的 Activity 需要使用 `android:configChanges` 属性和 `onConfigurationChanged` 方法。同时,我们也需要正确处理屏幕方向的改变,以确保应用程序的正确运行。

    Android代码-MyRotation.zip

    不使用此属性或者将其设为`android:configChanges="orientation|screenSize"`则会让系统默认处理屏幕旋转,销毁并重建Activity。 ```xml android:name=".YourActivity" android:configChanges="orientation|...

    Android横竖屏贴换调动方法

    本篇文章将深入解析Android横竖屏切换时Activity生命周期的变动,以及如何通过配置`android:configChanges`属性来控制Activity的行为。 首先,当我们不进行任何特殊配置时,即在`AndroidManifest.xml`中没有指定`...

    Android常用技巧.docx

    其次,关于重新载入问题,当屏幕方向改变时,如果不希望重新加载`Activity`,可以利用`AndroidManifest.xml`中的`android:configChanges`属性。将该属性设置为`orientation`,如: ```xml android:name=".Your...

    android面试题和答案

    通过设置AndroidManifest.xml中Activity的android:configChanges属性,可以改变系统对屏幕方向改变事件的处理方式。例如,设置android:configChanges="orientation"可以让系统不再重新创建Activity,而是调用...

    Android应用源码之(横竖屏切换处理-IT计算机-毕业设计.zip

    在AndroidManifest.xml文件中,你可以为每个Activity设置`android:configChanges`属性来控制横竖屏切换的行为。例如,将其设置为`orientation`或`screenOrientation`,可以让Activity在屏幕方向改变时自己处理配置...

    Android监听横竖屏切换功能

    在AndroidManifest.xml文件中配置Activity时,可以通过设置android:configChanges属性来通知Android系统,当某些配置发生变化时,系统不需要销毁并重新创建Activity,而是调用onConfigurationChanged方法来处理这些...

    3-ANDROID 四大组件1

    在Activity的声明中,可以设置android:configChanges属性来处理特定的配置更改,如键盘隐藏、屏幕方向等。当配置改变时,系统默认会销毁并重新创建Activity,但如果指定android:configChanges="keyboardHidden|...

    Android笔试题.docx

    在清单文件中配置 android:configChanges 属性可以影响 Activity 的生命周期。例如,如果我们设置 android:configChanges="orientation",那么 Activity 将不会重新调用各个生命周期,但是如果我们不设置该属性,...

    Android面试题

    1. **不设置Activity的android:configChanges属性** - **描述**:当屏幕旋转时,会重新调用各个生命周期方法。 - **特点**:切横屏时会执行一次,切竖屏时会执行两次。 2. **设置Activity的android:configChanges...

    Android基础系列的Activity

    为了避免不必要的重建,可以通过在AndroidManifest.xml中指定Activity的android:configChanges属性,或重写onConfigurationChanged()方法来手动处理配置变化。 总结起来,Android的Activity是构建用户界面和实现...

    Android 60 道面试题及答案.docx

    * 在不设置 android:configChanges 属性时,Activity 会销毁并重新创建,而设置了该属性时,只会执行 onConfigurationChanged() 方法 三、Fragment 生命周期 * Fragment 生命周期包括 onAttach()、onCreate()、...

    activity的设置大全

    android:configChanges="orientation|keyboardHidden|screenSize" /> ``` #### 五、`android:enabled` **属性描述:** 该属性控制`Activity`是否可以被实例化。设置为`false`时,该`Activity`将不会被启动,通常...

    android国际化中英文切换demo

    这可以通过在`AndroidManifest.xml`文件中设置`android:supportsRtl`属性来实现: ```xml android:allowBackup="true" android:supportsRtl="true" android:configChanges="locale" android:label="@string/...

    Android activity属性设置大全.doc

    4. android:configChanges=[one or more of: "mcc" "mnc" "locale" "touchscreen" "keyboard" "keyboardHidden" "navigation" "orientation" "fontScale"] 这个属性用于指定哪些配置变化会导致系统调用...

    Android 面试整理 最新

    横竖屏切换时,根据`android:configChanges`属性的设置,Activity的生命周期表现不同: 1. 如果未设置`android:configChanges`,横竖屏切换会导致Activity重启,即会重新经历onCreate()等生命周期方法。 2. 设置`...

Global site tag (gtag.js) - Google Analytics