我正在为Android开发一个库。此lib包含自定义视图。我希望能够在我的lib中检测到为onConfigurationChanged()
调用该活动时。
我的第一个想法是将startActivity()
与我自己的活动一起使用,只实现onConfigurationChanged()
,但不幸的是,这会在应用程序之上启动一项新活动。是否可以在“后台”中运行活动?
也许我的方法不对?你知道我怎么能做到这一点吗?
答案 0 :(得分:1)
所以我试图解决它的方式不是googd。
我在我的lib中添加了一个方法onConfigurationChanged()
。这样,使用它的人将不得不从他们的活动中调用这个方法。
问题解决了!
答案 1 :(得分:1)
我遇到了类似的问题 - 一个自定义图库,它创建了自己的对话框,需要跟踪配置更改(因为它在方向更改时泄露了它的视图)。
要解决此问题,必须在检测到此类更改时调用dialog.dismiss()。我已经需要主要活动来调用自定义视图的一些方法,例如onContextItemSelected和onActivityResult。
我希望用户更透明。在这种特殊情况下,我通过从onSaveInstanceState
View
(而非Activity
)调用dismiss方法来实现此目的,并保持调用者活动的完整性,而无需再调用任何方法自定义视图。
答案 2 :(得分:0)
您需要在清单中定义活动处理onConfiguratoinChange,然后在您的代码中定义它。您可以在此处查看Google文档以获取示例。 http://developer.android.com/guide/topics/resources/runtime-changes.html