【发布时间】:2016-09-19 16:50:11
【问题描述】:
您好,我有一个带有 textview 的 fragmentA。当我单击它时,我会转到具有项目列表的 fragmentB。 当点击 listitem iam 回到 fragmentA 并使用 listitem 值更新 textview。 现在,当我再次单击 textview 时,它会抛出 Illegalstateexception:can't change tag of fragment
boreselect.setOnClickListener(new OnClickListener() {
Fragment newContentbore = new BoreValuesListFragment();
@Override
public void onClick(View v) {
Fragment currentFragment = getFragmentManager().findFragmentByTag(FragmentChangeActivity.mFragmentStack.peek());
String tagbore = newContentbore.toString();
FragmentChangeActivity.mFragmentStack.add(tagbore);
FragmentTransaction transaction = getFragmentManager().beginTransaction();
transaction.add(R.id.content_frame, newContentbore,tagbore);
transaction.hide(currentFragment);
transaction.addToBackStack(tagbore);
transaction.commit();
}
});
我的堆栈跟踪
01-20 00:14:59.819: E/AndroidRuntime(26655): FATAL EXCEPTION: main
01-20 00:14:59.819: E/AndroidRuntime(26655): java.lang.IllegalStateException: Can't change tag of fragment BoreValuesListFragment{42a283a0 #2 id=0x7f090044 BoreValuesListFragment{42a283a0}}: was BoreValuesListFragment{42a283a0} now BoreValuesListFragment{42a283a0 #2 id=0x7f090044 BoreValuesListFragment{42a283a0}}
01-20 00:14:59.819: E/AndroidRuntime(26655): at android.support.v4.app.BackStackRecord.doAddOp(BackStackRecord.java:351)
01-20 00:14:59.819: E/AndroidRuntime(26655): at android.support.v4.app.BackStackRecord.add(BackStackRecord.java:342)
【问题讨论】:
标签: android android-fragments illegalstateexception