Android:将参数传递给选项卡

时间:2013-05-15 10:07:42

标签: android fragment-tab-host

在我的Android应用中,我使用以下代码创建标签:

mTabHost = (FragmentTabHost)findViewById(android.R.id.tabhost);
mTabHost.setup(this, getSupportFragmentManager(), R.id.realtabcontent);
mTabHost.addTab(mTabHost.newTabSpec("simple").setIndicator("Simple"),
            MyFragment.class, null);

addTab方法中,第三个参数是Bundle对象,并且是null。我可以使用第三个参数将参数传递给我的片段吗?

addTab的android API文档为空,但未记录此参数。

2 个答案:

答案 0 :(得分:11)

答案是肯定的。您在此Bundle中传递的参数稍后会设置为您的片段arguments,并且可以从片段内部使用getArguments进行访问。

在FragmentTabHost中实现的代码是:

newTab.fragment = Fragment.instantiate(mContext,
                        newTab.clss.getName(), newTab.args);

答案 1 :(得分:1)

查看FragmentTabHost.java,看起来它将此包传递给tabinfo,其中包含片段。所以答案是肯定的!