如何以编程方式处理viewpager中片段的方向更改?

时间:2015-06-14 17:50:13

标签: android android-layout android-fragments

我有3个片段,其中只有一个必须改变他的方向(但不是活动),活动有标志congifChanges="orientation|screenSize"viewPager。我想以编程方式更改每个方向更改的布局。

我已经有两种不同的布局,如果我将在viewPager上滚动页面,布局将按预期更改。

我有什么:

enter image description here

我想要的是什么:

enter image description here

1 个答案:

答案 0 :(得分:2)

在这种情况下,似乎应该难以实施决策。事实上,这是三行:

@Override
public void onConfigurationChanged(Configuration newConfig) {
    super.onConfigurationChanged(newConfig);
    ViewGroup viewGroup = (ViewGroup) getView();
    viewGroup.removeAllViewsInLayout();
    View view = onCreateView(getActivity().getLayoutInflater(), viewGroup, null); viewGroup.addView(view);
}

Here我找到了它

重新绘制片段不是最好的想法,如果它保留一些数据(播放视频,地图等),因为我没有动态变化的数据,我必须显示相同的事情,只是在不同的方向,我如果您需要更改方向并且没有丢失必须阅读this的数据,则使用此方法。