こんにちは、フラグメントが 1 つのフラグメントを andthot フラグメントに切り替えている間、気を取り直しています..私のコードが私を助けてくれるのを見てください....
MainActivity
-------------------
// adding new item
addItem()
{
FragmentManager mFragmentManger = getFragmentManager();
FragmentTransaction transaction = mFragmentManager.beginTransaction();
transaction.remove(mFragmentManager.findFragmentByTag(Constants.TAG_LIST));
Fragment fragmentAdd = new AddFragment(mFragmentManager);
transaction.add(R.id.ListLayout, fragmentAdd,"AddNew").addToBackStack()
.commit();
}
// Detailsfragment listItem
editItem()
{
transaction.remove(mFragmentManager.findFragmentByTag(Constants.TAG_LIST));
Fragment editFragment = new Detailsfragment(mFragmentManager);
transaction.add(R.id.ListLayout, Detailsfragment).addToBackStack(null).commit();
}
AddFragment
---------------------
nextButton()
{
CoformFragment confrom = new CoformFragment();
transaction.remove(mFragmentManager.findFragmentByTag("AddNew"));
transaction.add(R.id.ListLayout, fragment,"coform").addToBackStack(null).commit();
}
CancelButton()
{
mFragmentManeger.popBackStack();
}
CoformFragment
----------------------
conformButton()
{
transaction.remove(mFragmentManager.findFragmentByTag("Number"));
Fragment listFragmrnt = mFragmentManager.findFragmentByTag(Constants.TAG_LIST);
transaction.replace(R.id.ListLayout, listFragment).commit();
}
backButton()
{
mFragmentManeger.popBackStack();
}
Detailsfragment
------------------
showListDetails()
{
mFragmentManager.beginTransaction().replace(R.id.listLayout, fragment).commit();
}
EditFragment
-------------------
confromButton()
{
updated values
then
Detailsfragment fragment = new Detailsfragment();
mFragmentManager.beginTransaction().replace(R.id.listLayout, fragment).commit();
}
cancelButton()
{
mFragmentManager.beginTransaction().replace(R.id.listLayout, fragment).commit();
}
最初は正常に機能し、2回目は重なっています
main-->add->>confrom-->main
main-->details-->edit-->main
2回目の追加または編集を行ったときに初めて正常に動作します。メインと追加、メインと詳細フラグメントが重複します
この問題を解決する方法