`
feifei_lee
  • 浏览: 44072 次
  • 性别: Icon_minigender_2
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

转屏,ConfigChanges

阅读更多

通过设置ConfigChanges这个属性可以捕捉设备状态变化。

例转屏时,保存所做操作继续进行。具体设置如下:
  1 在相关的AndroidMainfest.xml中
<activity 
添加android:configChanges="orientation"
2 在相关的.java文件中添加方法 

  @Override
    public void onConfigurationChanged(Configuration newConfig) {
            super.onConfigurationChanged(newConfig);
            if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) {
        //landscape表示横向
            } else if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) {
       //portrait表示纵向
            }
    }  

在android中每次屏幕的切换会重启Activity。加上configChanges=“keyboardHidden”属性,就不会重启activity,而是去调用onConfigurationChanged方法。

 

 

ConfigChanges设置方法:将下列字段用“|”分隔开,例:“orientation|keyboardHidden"

Value                           Description 
“mcc“                The IMSI mobile country code (MCC) has changed — that is, a SIM hasbeen detected and updated the MCC.移动国家号码,由三位数字组成,每个国家都有自己独立的MCC,可以识别手机用户所属国家。 
“mnc“               The IMSI mobile network code (MNC) has changed — that is, a SIM hasbeen detected and updated the MNC.移动网号,在一个国家或者地区中,用于区分手机用户的服务商。 
“locale“             The locale has changed — for example, the user has selected a new language that text should be displayed in.用户所在地区发生变化。 
“touchscreen“       The touchscreen has changed. (This should never normally happen.) 
“keyboard“         The keyboard type has changed — for example, the user has plugged in an external keyboard.键盘模式发生变化,例如:用户接入外部键盘输入。 
“keyboardHidden“  The keyboard accessibility has changed — for example, the user has slid the keyboard out to expose it.用户打开手机硬件键盘 
“navigation“        The navigation type has changed. (This should never normally happen.) 
“orientation“        The screen orientation has changed — that is, the user has rotated the device.设备旋转,横向显示和竖向显示模式切换。 
“fontScale“         The font scaling factor has changed — that is, the user has selected a new global font size.全局字体大小缩放发生改变 

 

具体见android.content.res.configuration

 

分享到:
评论
1 楼 幽灵草 2011-07-27  
哦哦,学习了

相关推荐

    屏幕方向锁定后自动旋转.zip

    当用户选择“屏幕方向锁定”后,设备通常会停留在当前的横屏或竖屏模式,但有时可能会因为某些原因出现意外旋转。开发者需要处理这种情况,确保应用在锁定模式下不会因为设备传感器的变化而自动旋转。 首先,我们...

    竖屏转横屏的 Activity切换效果

    在Android应用开发中,"竖屏转横屏的Activity切换效果"是一个常见的需求,涉及到屏幕方向的处理和动画效果的实现。以下将详细介绍这个主题的相关知识点。 首先,Android系统支持两种基本的屏幕方向: portrait(竖...

    转屏的处理

    在IT行业中,"转屏的处理"是一个常见的话题,特别是在移动应用开发中。当我们谈论转屏,我们通常指的是设备从横向模式切换到纵向模式,或者反之。这种转换可能对应用程序的布局、用户界面(UI)以及用户体验(UX)...

    VideoView的转屏处理技巧

    本篇将详细介绍如何在Android应用中使用`VideoView` 实现屏幕旋转时的转屏处理技巧。 首先,了解`VideoView`的基本用法。`VideoView`继承自`SurfaceView`,它可以加载并播放本地或网络上的视频资源。我们通常会通过...

    android 手机强制横竖屏

    如果不想在横竖屏切换时重新创建Activity,可以在AndroidManifest.xml中添加`android:configChanges="orientation|screenSize"`,然后重写Activity的`onConfigurationChanged()`方法来处理屏幕方向变化。 ```xml ...

    android 自适应屏幕翻转

    1. **在`AndroidManifest.xml`中设置`configChanges`属性**:通过添加`configChanges="orientation|keyboardHidden"`属性,可以告诉Android系统,该Activity可以处理配置变化而不重启,从而避免`onCreate()`的重复...

    解决Android手机屏幕横竖屏切换

    值得注意的是,如果不包含`keyboardHidden`选项,Activity在键盘显示或隐藏时可能会被销毁,而且在`onConfigurationChanged`事件中只能捕获竖屏转横屏的事件,无法捕获横屏转竖屏的情况。 #### 二、重写`...

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

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

    屏幕方向锁定后自动旋转

    3. **重写Activity的onConfigurationChanged()**:为了在屏幕方向改变时不重新创建Activity,需要在AndroidManifest.xml中对应的Activity标签中添加`android:configChanges="orientation|screenSize"`,然后在...

    Android 简单例子:横屏 竖屏切换.rar

    本实例主要探讨如何在Android应用中实现在横屏和竖屏之间的自由切换,以及如何检测屏幕方向的变化。 首先,Android系统提供了两种基本的屏幕方向:横屏(Landscape)和竖屏(Portrait)。默认情况下,Android应用会...

    【Android每周专题】横竖屏切换

    在Android开发中,横竖屏切换是一个常见的需求,尤其对于那些需要根据屏幕方向提供不同界面布局的应用来说。本文将深入探讨Android系统中的横竖屏切换机制,并通过"OrientationSwitchDemo"这个示例代码来帮助理解。 ...

    安卓 横竖屏切换源程序

    但需要注意,为了监听横竖屏变化,需要在AndroidManifest.xml中为对应的Activity添加`android:configChanges="orientation|screenSize"`。 六、源程序使用 这个“安卓横竖屏切换源程序”应该包含了一些处理横竖屏...

    Android视频播放器(支持横竖屏切换)

    使用`android:configChanges="orientation|screenSize"`在`AndroidManifest.xml`中声明屏幕配置变化,然后在`onConfigurationChanged()`方法中处理横竖屏的转换。 3. **横竖屏切换逻辑**:在横竖屏切换时,视频播放...

    android安卓横竖屏切换效果、webview加载以及生命周期监测

    在横竖屏切换过程中,Activity的生命周期会经历以下过程(如果未指定`android:configChanges`): 1. `onPause()`:Activity暂停,不再与用户交互。 2. `onStop()`:Activity不再可见,可能被其他Activity覆盖。 3....

    Android中WebView播放网上视频,横竖屏切换

    1. **配置Activity**:在AndroidManifest.xml中,将Activity的`android:configChanges`属性设置为`orientation|screenSize`,这样在横竖屏切换时,系统不会默认销毁Activity,而是调用`onConfigurationChanged()`...

    屏幕翻转Activity的生命周期

    为了优化用户体验并避免频繁地重建Activity实例,可以在AndroidManifest.xml中的Activity标签内添加属性`android:configChanges="orientation"`。这样做的好处在于: 1. **减少重建开销**:避免了Activity的重建...

    3-12-6(横竖屏切换处理).7z

    如果不希望这种行为,可以设置`android:configChanges="orientation"`,这样系统就不会默认销毁活动,而是调用`onConfigurationChanged()`方法。 3. **资源适配**:在res目录下,可以创建不同的价值目录如`values-...

    landscape模式-屏幕翻转.zip

    同时,别忘了在AndroidManifest.xml中为对应的Activity添加`android:configChanges="orientation|screenSize"`,以允许Activity自行处理配置变化,而不是默认的重新创建Activity。 总结来说,"Landscape模式-屏幕...

    android_横竖屏切换demo

    本示例"android_横竖屏切换demo"旨在教你如何在Android应用中实现屏幕方向的自由转换,包括从横屏切换到竖屏以及从竖屏返回横屏。 在Android系统中,屏幕方向主要由AndroidManifest.xml文件中的标签控制。默认情况...

    android横竖屏切换总结

    在Android应用开发中,横竖屏切换是一个常见的需求,开发者需要处理好布局的变化以及由此引发的用户体验问题。本文将详细讲解如何在Android中实现横竖屏切换,并讨论如何禁止或控制这种切换。 首先,Android系统...

Global site tag (gtag.js) - Google Analytics