在Android导航组件中,可以使用configChanges
属性来防止单个片段的配置更改。下面是一个包含代码示例的解决方法:
android:configChanges="orientation|screenSize"
属性。这将防止Activity在屏幕方向或屏幕尺寸更改时重新创建。
onCreateView
方法中,将setRetainInstance(true)
方法添加到片段的实例中。这将使片段在配置更改后保留实例。@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_sample, container, false);
setRetainInstance(true);
// 其他初始化代码
return view;
}
通过使用上述方法,可以防止单个片段在配置更改时重新创建,从而保留片段的状态和数据。