0
在我的应用程序中,我有一个单独的Activity
和多个Fragments
。从我的MainActivity
,我添加了我的第一个Fragment
。从基于物品点击的第一个Fragment
适配器里面,我添加第二个Fragment
。并从第二个Activity
基于项目点击的适配器,我添加第三个Fragment
。如何处理单个活动和多个片段的方向变化
一切运作良好,但在方向变化,应用程序崩溃。
代码:
MainActivity:
if (savedInstanceState == null) {
mHomeScreenFragment = (HomeScreenFragment) getSupportFragmentManager().findFragmentById(R.id.contentFrame);
if (mHomeScreenFragment == null) {
mHomeScreenFragment = HomeScreenFragment.newInstance();
}
ActivityUtils.addFragmentToActivity(getSupportFragmentManager(), mHomeScreenFragment, R.id.contentFrame, "HomeScreen");
}
1片段适配器 - 对项目点击:
FoodListFragment foodListFragment = null;
if (foodListFragment == null) {
foodListFragment = foodListFragment.newInstance(position);
ActivityUtils.replaceFragmentToActivity(((MainActivity) view.getContext()).getSupportFragmentManager(),
foodListFragment, R.id.contentFrame, "FoodList");
}
第二Fragment
适配器 - 对项目点击:
FoodDetailsFragment foodDetailsFragment = null;//(FoodDetailsFragment) ((MainActivity)view.getContext()).getSupportFragmentManager().findFragmentByTag("FoodDetails");
if (foodDetailsFragment == null) {
foodDetailsFragment = foodDetailsFragment.newInstance(foodListData.getUrl(),
foodListData.getName(),
foodListData.getSalePrice().getAmount(),
foodListData.getSalePrice().getCurrency());
}
ActivityUtils.replaceFragmentToActivity(((MainActivity)view.getContext()).getSupportFragmentManager(), foodDetailsFragment, R.id.contentFrame, "FoodDetails");
有些人可以帮助我告诉如何在1 Activity
和多个Fragments
的情况下正确处理方向变化?
我几乎尝试了所有StackOverflow和其他地方的解决方案,似乎没有任何工作。
请上传冲突日志 – redAllocator