我在定位更改后遇到碎片和后堆栈的问题。在我的应用程序中,我按钮点击后添加一个新的片段到后面的堆栈:
getFragmentManager().beginTransaction().add(R.id.fl_root_calendar_container,
DayFragment.newInstance(monthDayView.getDateTime(), mCalendarListener), DayFragment.TAG).
addToBackStack(null).setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN).commit();
如果我点击后退按钮以使用以下代码更改方向后还原事务:
FragmentManager fm = getFragmentManager();
if (fm.getBackStackEntryCount() > 0) {
fm.popBackStack();
}
我再次看到上一个片段。一切都很好。但是在更改为横向/纵向视图后,视图会被拉伸或压缩。我没有使用
setRetainInstance(...)
生命周期回调
onCreateView(...)
在方向改变之后,在前一个片段中调用,但由于当前方向,已恢复片段内的视图未改变其大小。有办法以某种方式解决这个问题吗?