Android疑难杂症之android:configChanges="orientation" 无效

  通常情况下,当“屏幕方向”变化时会销毁并重建当前Activity。而我们有时候并不希望重新创建Activity实例,然后就会在AndroidManifest.xml中配置Activity:
 <activity android:name="com.example.MainActivity" android:configChanges="orientation" >

  android:configChanges="orientation" 属性指定了要捕获“屏幕方向”变化这个行为,当捕行为发生后,会调用Activity的onConfigurationChanged()方法。然而当我们在手机上调试的时候就会发现,其实并没有执行onConfigurationChanged()方法,依旧销毁当前Activity并创建新的Activity实例。

  Why?因为这个属性在低版本上是可以起作用。在android 4.0 以上不起作用,还要加上screenSize,即android:configChanges="orientation|screenSize",才能起效果。

  结束语:还是Google大法好~

时间: 2024-11-06 10:47:25

Android疑难杂症之android:configChanges="orientation" 无效的相关文章

android4.0 禁止横竖屏切换使用 android:configChanges="orientation|keyboardHidden"无效的解决方法

Android横竖屏幕切换时注意4.0以上配置configChanges要加上screenSize,要不还会调用onCreate(). <activity android:name=".MainActivity" android:configChanges="orientation|keyboardHidden|screenSize"/> android4.0 禁止横竖屏切换使用 android:configChanges="orientati

Android 4.0以上BlurMaskFilter效果无效

Android MaskFilter的基本使用: MaskFilter类可以为Paint分配边缘效果.        对MaskFilter的扩展可以对一个Paint边缘的alpha通道应用转换.Android包含了下面几种MaskFilter: BlurMaskFilter   指定了一个模糊的样式和半径来处理Paint的边缘.        EmbossMaskFilter  指定了光源的方向和环境光强度来添加浮雕效果. 要应用一个MaskFilter,可以使用setMaskFilter方法

Androidの疑难杂症之加载布局报Error inflating class &lt;unknown&gt;

android.view.InflateException: Binary XML file line #12: Error inflating class <unknown> 出现这种错误有可能是,你的布局当中某个wedget的属性出错,比如引用了?attr/xxxx,但是你的主题里面却没有给这个attr赋值. <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:and

【Android 疑难杂症】scrollTo和scrollBy的问题

首先,需要知道的是,View是可以延伸到屏幕之外的,可以想象一下ListVIew或GridView.也就是说View的尺寸可以超过屏幕的尺寸.View的大小就是onDraw()中Canvas画布的大小.Canvas可以做translate().clipRec()t等变换,可以说Canvas是无边界的.而我们在屏幕上所见到的,只是Canvas的一部分而已.可以调用View的scrollTo()和scrollBy()将视图绘制到指定区域.那么View中的scrollTo()和scrollBy()又是

Android 开发之Android 应用程序如何调用支付宝接口

1.到支付宝官网,下载支付宝集成开发包 由于android设备一般用的都是无线支付,所以我们申请的就是支付宝无线快捷支付接口.下面是申请的地址以及下载接口开发包的网址:https://b.alipay.com/order/productDetail.htm?productId=2014110308141993(如果链接失效,你可以到支付宝官网商家服务模块中找到 快捷支付(无线)这个服务.)  下载集成开发包(http://download.alipay.com/public/api/base/W

Android直播实现 Android端推流、播放

最近想实现一个Android直播,但是对于这方面的资料都比较零碎,一开始是打算用ffmpeg来实现编码推流,在搜集资料期间,找到了几个强大的开源库,直接避免了jni的代码,集成后只用少量的java代码就可实现编码.推流和取流播放,整理了一下做了一个demo,在这里记录一下 效果图:  编码和推流,有两个方案选择: 一: 使用javacv来实现,最终也是用过ffmpeg来进行编码和推流,javacv实现到可以直接接收摄像头的帧数据 需要自己实现的代码只是打开摄像头,写一个SurfaceView进行

android:layout_gravity和android:gravity

  在安卓中这两个属性经常用,特地来总结一下: android:layout_gravity:XML 里面的提示是这样的,Standard gravity constant that a child supplies to its parent. [flag],我大致翻译一下,一个由子view提供给父view用作指定位置的常量. android:gravity:Specifies how to align the text by the view's x- and/or y-axis  when

Android学习——在Android中使用OpenCV的第一个程序

刚开始学习Android,由于之前比较熟悉OpenCV,于是就想先在Android上运行OpenCV试试 =================================================================================== 1.环境配置 JDK Eclipse ADT CDT Android SDK Android NDK cygwin OpenCV for Android 2.4.9 这部分网上很多,我就不再赘述了,可以参考:http://bl

【android自定义控件】android ListView添加侧滑删除

为ListView添加炫酷的Item中带侧滑的删除,原理是利用item布局中的padding(Left和Right)属性为负值,来把删除的按钮隐藏在屏幕外.然后通过自定义ListView重写其中的OnTouchEvent通过手指坐标点的计算来处理事件,实现itemView的滚动,达到滑动出现删除菜单,本例中仅实现右向左滑出现删除按钮,大家可以根据自己需求,参照自定义ListView中事件处理做出左侧滑,右侧滑出现菜单,当然不仅仅局限于删除.更多灵活用法期待发觉. 首先上自定义的ListSlide