0

我有TabActivity和另外三个选项卡中的活动。清单文件我有一行:与TabActivity中的onConfigurationChanged问题

android:configChanges="orientation|keyboardHidden|keyboard" 

<activity>的TabActivity的标签,并且还另外三人的活动。我的所有活动onConfigurationChanged(Configuration newConfig)方法也被覆盖了。几乎在所有情况下它都能正常工作。之后,手机屏幕仅在横向模式下消隐,并且我点击了主页按钮,然后我想改变方向onConfigurationChanged方法尚未被调用。

我已经使用了Toast类,并且我知道TabActivity的唯一方法onConfigurationChanged此时已被调用,但在此选项卡中没有当前活动的此方法。但是,当我最终更改方向时,已调用活动选项卡中当前活动的onConfigurationChanged方法。我该如何解决这个错误?我的代码正常工作,但不是在这种情况下。

我注意到,当我在TabActivity中切换选项卡并更改方向时,出现类似的问题。但现在我无法解释它何时有效,何时无效。我陷入困境。我知道总是调用TabActivity的onConfigurationChanged方法。但是这种标签中的活动方法 - 不是全部。

+0

如果我理解正确,您正在使用Toasts来通知您配置更改。我会建议调试应用程序并在'onConfigurationChanged'上设置一个断点来验证函数是否真的没有在你期望的时候被调用。 –

+0

是的,我正在使用Toasts来通知我配置更改。我已用'onConfigurationChanged'上的断点调试了我的应用程序。而且,当手机处于横向模式,设备被锁定,并且我在纵向模式下解锁设备并将方向更改为横向时,真正不会调用该功能,现在此时'onConfigurationChanged'方法尚未调用。 – woyaru

+0

我本来希望这个问题只是通过反映这个变化,但它似乎更加复杂。如果只能通过锁定/解锁来重现它,则可以在'onResume()'中手动检查配置。恐怕我没有任何其他与您的问题相关的建议。 –

回答

1

对我来说这是Android TabActivity中的一个不固定的错误。现在,在Android中使用Tabs已弃用 Android已经引入了代替Tabs的Fragments。显然,标签问题已经消失。这个问题已经在地毯下扫过了。