Tab Fragment,每次切换选项卡时创建视图

时间:2013-02-28 04:59:53

标签: android android-fragments

我探索了一些标签片段示例(在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;
    }

是否可以在首次创建片段视图时创建一次片段视图,并且在制表符之间切换时会显示/消失,而不是再次创建?

2 个答案:

答案 0 :(得分:1)

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

从这里找到它:How to cache a fragment view

答案 1 :(得分:0)

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

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