如何更改片段的布局而不重新创建它?
问题描述:
我有一个Activity
,它侦听已更改的方向,以防止它在我们旋转屏幕时重新创建。如何更改片段的布局而不重新创建它?
我有一些Fragment
附加到这个Activity
。
当屏幕方向改变时,我的Activity
是没有重新创建,当然我的Fragment
没有重新创建。但我想改变它的布局。
如何更改Fragment
的布局而不重新创建它?
答
您应该为每个布局使用资源修饰符。对于应在景观使用例如布局只应该去res/layout-land
文件夹
编辑1 试试这个
class MyFragment extends Fragment {
void someMyVoid() {
getFragmentManager()
.beginTransaction()
.replace(R.id.layout, new MyFragment)
.commit();
}
}
我试过了。但它没有帮助。因为不调用'onCreateView'方法来重新扩充新布局 – TOP
它应该被调用。因为片段驻留在活动中,并且重新创建活动时重新创建片段。给我们提供一些代码 –
查看我的更新答案。我的'活动'没有重新创建,因为它听取configChange – TOP