android– 当布局不为空时得到“java.lang.IllegalStateException:片段已经激活”

android– 当布局不为空时得到“java.lang.IllegalStateException:片段已经激活”,第1张

概述我有3个片段的活动和寻呼机.我使用标签进行切换.当我点击某个按钮时,我想用新的替换fragment0.仅当fragment0具有空布局时才有效.如果我在fragment0的布局中设置一些内容(必须有listview)抛出异常:java.lang.IllegalStateException: Fragment already active at and

我有3个片段的活动和寻呼机.我使用标签进行切换.
当我点击某个按钮时,我想用新的替换fragment0.
仅当fragment0具有空布局时才有效.如果我在fragment0的布局中设置一些内容(必须有ListvIEw)抛出异常:

java.lang.IllegalStateException: Fragment already active    at androID.support.v4.app.Fragment.setinitialSavedState(Fragment.java:503)    at androID.support.v4.app.FragmentStatePagerAdapter.instantiateItem(FragmentStatePagerAdapter.java:110)    at androID.support.v4.vIEw.VIEwPager.addNewItem(VIEwPager.java:649)

我使用以下布局:

活动:

public class Activity extends FragmentActivity {    private List

应用程序抛出异常在线

this.notifyDataSetChanged();

如果布局不为空.

我找不到解决方法如何避免此异常并正确替换片段.

EDITED

https://android.googlesource.com/platform/frameworks/support/+/jb-mr1-dev/v4/java/android/support/v4/app/Fragment.java

正如我检查的Fragment类包含以下方法:

public voID setArguments(Bundle args) {    if (mIndex >= 0) {        throw new IllegalStateException("Fragment already active");    }    mArguments = args;}

也许我添加片段的方式不正确..最佳答案这是添加片段的错误逻辑.可以在这里找到良好的工作解决方案:correct answer 总结

以上是内存溢出为你收集整理的android – 当布局不为空时得到“java.lang.IllegalStateException:片段已经激活”全部内容,希望文章能够帮你解决android – 当布局不为空时得到“java.lang.IllegalStateException:片段已经激活”所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1140419.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)