gpt4 book ai didi

android - java.lang.NoSuchMethodError : Activity. isDestroyed below Api 17 handle

转载 作者:行者123 更新时间:2023-11-29 15:08:25 28 4
gpt4 key购买 nike

我的应用程序支持最低版本的 api 15。isDestroyed() 方法支持最低 api 17。

所以当我在 api 17 下使用这个方法时没有这样的方法错误

用户按下主页按钮并使用其他应用程序。打开后我的应用 Activity 实例被销毁,当我使用这个 Activity 实例时,我得到一个错误:

Fatal Exception: java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState
at android.support.v4.app.FragmentManagerImpl.checkStateLoss(Unknown Source)
at android.support.v4.app.FragmentManagerImpl.enqueueAction(Unknown Source)
at android.support.v4.app.BackStackRecord.commitInternal(Unknown Source)
at android.support.v4.app.BackStackRecord.commit(Unknown Source)

我能做什么?

最佳答案

您可能在 onSaveInstanteState 之后或从 android 无法保证能够恢复状态的其他位置提交 fragment 。

您可以改用 commitAllowingStateLoss()并且不要使用 isDestroyed()。我想您还可以检查 getActivity() 是否为 null,并且仅在它不为 null 时才提交。如果 fragment 被分离,它将为空。

[编辑]

您还可以使用提供此方法的支持库:

http://developer.android.com/reference/android/support/v4/app/FragmentManager.html#isDestroyed()

(奇怪,但从你的异常来看,你似乎正在使用支持库)

关于android - java.lang.NoSuchMethodError : Activity. isDestroyed below Api 17 handle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34508345/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com