在我的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文档为空,但未记录此参数。
答案 0 :(得分:11)
答案是肯定的。您在此Bundle
中传递的参数稍后会设置为您的片段arguments
,并且可以从片段内部使用getArguments进行访问。
在FragmentTabHost中实现的代码是:
newTab.fragment = Fragment.instantiate(mContext,
newTab.clss.getName(), newTab.args);
答案 1 :(得分:1)
查看FragmentTabHost.java,看起来它将此包传递给tabinfo,其中包含片段。所以答案是肯定的!