我有一个带有3个标签的FragmentActivity,他们正在共享一个位置数据(我需要纬度和经度),但我无法得到它!
我有这个方法:
public void addTab(String tag, TabHost.TabSpec tabSpec, Class<?> clss, Bundle args) {
tabSpec.setContent(new DummyTabFactory(mActivity));
TabInfo info = new TabInfo(tag, clss, args);
// Check to see if we already have a fragment for this tab, probably
// from a previously saved state. If so, deactivate it, because our
// initial state is that a tab isn't shown.
info.fragment = mActivity.getSupportFragmentManager().findFragmentByTag(tag);
if (info.fragment != null && !info.fragment.isDetached()) {
FragmentTransaction ft = mActivity.getSupportFragmentManager().beginTransaction();
ft.detach(info.fragment);
ft.commit();
}
mTabs.put(tag, info);
mTabHost.addTab(tabSpec);
}
所以,当我创建标签时:
Bundle bundlePos = new Bundle();
bundlePos.putString("lat", "98.645");
bundlePos.putString("lng", "-1.2545");
mTabManager.addTab("map", mTabHost.newTabSpec("map").setIndicator("Plano de paradas", this.getResources().getDrawable(R.drawable.maps_tab)), maps.class, bundlePos);
在maps.java中,我尝试获取lat和lng参数,但我不能。
我该怎么做?
非常感谢您提前
答案 0 :(得分:0)
你必须使用方法setArguments(Bundle)将Bundle
放入Fragment
,然后你必须使用getArguments()
来检索它,并通过捆绑你从getArguments()
返回,您可以回复latitude
和longitude