5

我探索了几个选项卡片段示例(在 Support4Demos 中也提供了一个)但我发现每次切换选项卡时,每次都从片段类的“onCreateView”创建选项卡内容视图。

@Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        View v = inflater.inflate(R.layout.hello_world, container, false);
        View tv = v.findViewById(R.id.text);
        ((TextView)tv).setText("Fragment #" + mNum);
        tv.setBackgroundDrawable(getResources().getDrawable(android.R.drawable.gallery_thumb));
        return v;
    }

是否可以在首次创建片段视图时创建一次,并且在选项卡之间切换而不是再次创建时将显示/消失?

4

2 回答 2

1

我想我找到了解决方案。我需要使用寻呼机,它会缓存选项卡,并且不会在每次切换时创建新视图。

从这里找到它:如何缓存片段视图

于 2013-02-28T07:02:36.910 回答
0

不,你必须习惯这个想法并开始保存屏幕旋转和类似的重要信息。然后,当您再次创建视图时,您会获取保存的信息并将其用于初始化。

有关类似讨论,请参见此处。基本上在您的片段 onActivityCreated 中加载数据,在片段 onSaveInstanceState 中保存数据。

于 2013-02-28T05:20:10.470 回答