我的活动有问题 当我改变手机的方向时,活动运行onCreate方法agaian (我的程序在onCreate中下载文件)
如何在方向更改后重新启动活动?
答案 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)
答案 3 :(得分:1)
您应该正确处理配置更改,您可以使用onSaveInstanceState
来存储已下载给定文件的信息 - 即。与它的路径。在配置更改后,onCreate Bundle savedInstanceState
将为非null,您可以从中读取有关下载文件的信息。
如果您使用android:configChanges
,则无法解决您的问题。一旦你去其他应用程序,android可能会破坏你的活动,当你回到你的应用程序时,android会再次重新创建它 - 你再次开始下载你的文件。