3

我已经声明了framgmentActivity,如下所示:

    mTabHost = (FragmentTabHost) findViewById(android.R.id.tabhost);
    mTabHost.setup(this, getSupportFragmentManager(), R.id.realtabcontent);
    mTabHost.addTab(mTabHost.newTabSpec("basic").setIndicator("Basic",getResources().getDrawable(R.drawable.ic_launcher)),BasicProductFragment.class, null);
    mTabHost.addTab(mTabHost.newTabSpec("taxes").setIndicator("Taxes",getResources().getDrawable(R.drawable.ic_launcher)),TaxesProductFragment.class, null);
    mTabHost.addTab(mTabHost.newTabSpec("price").setIndicator("Price",getResources().getDrawable(R.drawable.ic_launcher)),PriceProductFragment.class, null);
    mTabHost.addTab(mTabHost.newTabSpec("stock").setIndicator("Stock",getResources().getDrawable(R.drawable.ic_launcher)),StockProductFragment.class, null);

现在在所有框架中,我现在在这个活动中声明了两个或三个编辑文本,我想从不同片段选项卡的所有编辑文本中获取数据。

4

1 回答 1

3

单例类可以帮助解决您的问题。

public class GlobalApp {
    private static GlobalApp instance = new GlobalApp();

    private GlobalApp() {}

    public static GlobalApp getInstance() {
        return instance;
    }

    public Details details = new Details ();

}

然后像这样在你的 Fragment 类中使用..

GlobalApp.getInstance().details.setSomeData("something");

现在您可以在 mainActivity 中获取这些片段中更改的所有值

 GlobalApp.getInstance().details.getSomeData();

我对另一个与此有关的问题给出了相同的答案。

Android 上的 Fragment 之间的通信

于 2013-06-19T13:13:37.443 回答