【问题标题】:findFragmentByTag - looking for fragment in FragmentTabHost - always nullfindFragmentByTag - 在 FragmentTabHost 中寻找片段 - 始终为空
【发布时间】:2013-05-17 19:27:27
【问题描述】:

我无法获取指向 FragmentTabhost 中当前可见片段的 Fragment 的指针。

我有一个名为 SecondActivitySherlockFragmentActivity 可以从它的 onCreate 方法加载 Tabhost,如下所示:

if (getSupportFragmentManager().findFragmentById(android.R.id.content) == null) {
    Fragment f = new TabsFragment();

    getSupportFragmentManager().beginTransaction().add(android.R.id.content, f, "tabsfragment").commit();
}

TabsFragmentSherlockFragment 子类,使用此 onCreate 方法创建选项卡

@Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        mTabHost = new FragmentTabHost(getActivity());
        mTabHost.setup(getActivity(), getChildFragmentManager(), R.layout.tabs);

        mTabHost.addTab(mTabHost.newTabSpec("Tab1").setIndicator("Offers",
                getResources().getDrawable(R.drawable.offersale)),
                OfferListFragment.class,
                null);

        mTabHost.addTab(mTabHost.newTabSpec("Tab2").setIndicator("News",
                getResources().getDrawable(R.drawable.newspaper)),
                NewsFragment.class,
                null);

        return mTabHost;

    }

现在,当我在第二个选项卡中时,我在一个由原始活动SecondActivity 发起的类中完成了一项后台任务,然后我调用它应该给我一个选项卡的引用,但是它总是返回 null!

NewsFragment newsView = (NewsFragment) delegate.getSupportFragmentManager().findFragmentByTag("Tab2");

delegate 变量是在启动后台类时指向SecondActivity 的指针。

如何获得指向选项卡片段的指针? 添加标签时设置的“Tab2”是片段的Tag,我错了吗?

【问题讨论】:

    标签: android actionbarsherlock android-tabhost fragment-tab-host


    【解决方案1】:

    我不太喜欢回答自己的问题,但睡在上面能做的事情真是太棒了。 这个怪物给了我一个指向tabhost中片段的指针

    NewsFragment newsView = (NewsFragment) delegate
                            .getSupportFragmentManager()
                            .findFragmentByTag("tabsfragment")
                            .getChildFragmentManager()
                            .findFragmentByTag("Tab2");
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-12-31
      • 1970-01-01
      • 1970-01-01
      • 2021-05-25
      • 2014-02-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多