2012-03-08 33 views
0

我有一個FragmentActivity與3個選項卡,他們共享一個位置數據(我需要經度和緯度),但我無法得到它!如何共享標籤之間的參數

我有這樣的方法:

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我試圖讓緯度和經度參數,但我不能。

我該怎麼做?

非常感謝你提前

回答

0

您在使用方法setArguments(Bundle)把該BundleFragment,然後你必須使用進行檢索,並通過捆綁你回到你可以讀回latitudelongitude

+0

恐怕我不理解你,我應該這樣做,在類擴展片段? 這對我來說沒有任何意義,我認爲我應該在FragmentActivity的課程中做到這一點,你能告訴我更多細節嗎? 謝謝! – user1256477 2012-03-08 08:30:32

+0

是info.fragment的片段實例嗎? – Blackbelt 2012-03-08 08:32:57

+0

非常感謝你!我得到你的幫助! 這不是必需的添加setArguments,但是,我需要用getArguments而不是getString捕捉它們,因爲我正在嘗試。 謝謝! – user1256477 2012-03-08 08:38:23