gpt4 book ai didi

android - Android Content View 尚未创建 fragment

转载 作者:行者123 更新时间:2023-12-02 11:01:34 24 4
gpt4 key购买 nike

目前,我有一个包含4个片段的选项卡布局设置。我有一个片段,最初是在片段之间切换时出现重复的id错误。我设法通过在下面应用以下代码解决了该问题,但是现在我在切换时收到尚未创建内容 View 的消息。

public class contactus2 extends Fragment {

private static View view;

@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
if (view != null) {
ViewGroup parent = (ViewGroup) view.getParent();
if (parent != null)
parent.removeView(view);
}
try {
view = inflater.inflate(R.layout.contactus2, container, false);
} catch (InflateException e) {
Log.i("Inflate", "View Hidden");

}
return view;
}

}

最佳答案

onCreateView()永远不要引用静态View对象。循环浏览应用程序时,Android将拆除并重建片段的 View 。因此,您应该始终在onCreateView内部扩大一个新 View 。现在,您的应用程序将尝试将 View 重用于多个片段。

像这样:

public class contactus2 extends Fragment {

private View rootView;

@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
rootView = inflater.inflate(R.layout.contactus2, container, false);
return rootView;
}
}

基本上,删除对片段的 View 引用的静态分配。

关于android - Android Content View 尚未创建 fragment ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37172746/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com