Android:更改方向时活动重新启动

时间:2014-01-16 13:40:02

标签: android

我的活动有问题 当我改变手机的方向时,活动运行onCreate方法agaian (我的程序在onCreate中下载文件)

如何在方向更改后重新启动活动?

4 个答案:

答案 0 :(得分:3)

这是Android活动的默认行为 - 无论何时更改设备配置,都会重新创建它们。

要更改此行为,请将此行添加到AndroidManifest.xml

中的“活动”声明中
android:configChanges="orientation|keyboardHidden|screenSize" 

这将告诉系统您自己处理活动的方向更改。

答案 1 :(得分:1)

在AndroidManifest.xml

中使用此功能
<activity
            android:name="MyActivity"
            android:configChanges="orientation|screenSize"
            android:screenOrientation="sensor" />

答案 2 :(得分:1)

android:configChanges 很好,如果你没有改变任何东西,那么活动方向会有所改变。

您还可以阅读文档中处理方向更改的信息:thisthis

答案 3 :(得分:1)

您应该正确处理配置更改,您可以使用onSaveInstanceState来存储已下载给定文件的信息 - 即。与它的路径。在配置更改后,onCreate Bundle savedInstanceState将为非null,您可以从中读取有关下载文件的信息。

如果您使用android:configChanges,则无法解决您的问题。一旦你去其他应用程序,android可能会破坏你的活动,当你回到你的应用程序时,android会再次重新创建它 - 你再次开始下载你的文件