我想阻止系统在设备orientation
发生更改时重新启动我的活动。 minSdkVersion
必须为10,targetSdkVersion
必须至少为15。我无法使用configChanges="orientation|screenSize"
,因为最低版本的SDK版本为10,此属性的“screenSize”值仅在SDK版本13之后出现。
有什么建议吗?
我知道有类似的问题得到解答,但问题仍未解决。请不要建议将min SDK版本设置为高于10,因为这会切断运行2.3.x的设备,这是市场的43%。目标SDK必须至少为15。
提前谢谢。
答案 0 :(得分:3)
因为它是在android开发者网站上描述的
http://developer.android.com/guide/topics/resources/runtime-changes.html#HandlingTheChange
你必须指定
android:configChanges="orientation|keyboardHidden"
如果您的目标是API等级12或更低。
答案 1 :(得分:1)
试试这个,在mainfest.xml
每个活动
android:configChanges="keyboardHidden|orientation"
答案 2 :(得分:0)
如果你不一定需要具体的configChanges =“orientation | screenSize” 你可以尝试这个android:configChanges =“orientation | keyboardHidden”。
默认情况下,当Android上发生某些关键配置更改时(常见的示例是方向更改),Android会完全重新启动正在运行的活动,以帮助其适应此类更改。
当你在AndroidManifest中定义android:configChanges =“keyboardHidden | orientation”时,你会告诉Android:“当拔出键盘或手机旋转时,请不要进行默认重设;我想处理我自己。是的,我知道我在做什么“
答案 3 :(得分:0)
如果targetSdkVersion
为15或更高,则需要指定
android:configChanges="orientation|keyboardHidden|screenSize"
这适用于所有设备。