1

我正在为 Android 开发一个库。这个库包含一个自定义视图。我希望能够从我的库中检测到何时onConfigurationChanged()调用该活动。

我的第一个想法是startActivity()与我自己的仅实现的活动一起使用onConfigurationChanged(),但不幸的是,这在应用程序之上启动了一个新活动。是否可以在“后台”中运行活动?

也许我有错误的方法?你知道我怎么能做到这一点吗?

4

3 回答 3

1

所以我试图解决它的方式不是googd。

我在我的库中添加了一个方法onConfigurationChanged()。这样,使用它的人将不得不从他们的活动中调用此方法。

问题解决了!

于 2011-10-28T09:14:27.330 回答
1

我有一个类似的问题 - 一个自定义画廊创建了自己的对话框并需要跟踪配置更改(因为它在方向改变时泄露了它的视图)。

为了解决这个问题,当检测到这种变化时,必须调用 dialog.dismiss()。我已经需要主要活动来调用自定义视图的一些方法,例如 onContextItemSelected 和 onActivityResult。

我想要对用户更透明的东西。在这种特殊情况下,我通过从onSaveInstanceStatefrom View(而不是 from Activity)调用 dismiss 方法来实现这一点,并保持调用者活动完整,而无需从自定义视图调用任何更多方法。

于 2012-04-13T17:23:18.123 回答
0

您需要在清单中定义活动处理 onConfiguratoinChange,然后在代码中定义它。您可以在此处查看 Google 文档作为示例。http://developer.android.com/guide/topics/resources/runtime-changes.html

于 2011-10-26T19:37:20.447 回答