0

我是Android开发中的新手。我现在正在寻求解决方案,以便我可以将主要活动的值传递给不同的碎片。我的应用程序有一个主要活动和5个片段。我想在我的主要xml解析,然后将处理的数据传递给不同的片段,以便我可以同时绘制不同的页面。我的主要设置了一个新的片段适配器如何将数据从主要活动传递到片段

mAdapter = new FragmentAdapter(getSupportFragmentManager());

然后在我的FragmentAdapter(扩展FragmentPagerAdapter并实现IconPagerAdapter)中,我覆盖了getItem方法,以便可以创建5个片段来处理5个不同的页面。

@Override 
public Fragment getItem(int position) { 
    Fragment fragment = new Fragment1(); 
    switch(position){ 
    case 0: 
     fragment = new Fragment1(); 
     break; 
    case 1: 
     fragment = new Fragment2(); 
     break; 
    case 2: 
     fragment = new Fragment3(); 
     break; 
    case 3: 
     fragment = new Fragment4(); 
     break; 
    case 4: 
     fragment = new Fragment5(); 
     break; 

    } 
    return fragment; 
} 

我的问题是如何,我可以从我的主要传递一些值到新生成的fragments.For例如,我想从我的主要传递值“A”到片段1.如何做这个任务?韩国社交协会提前对您有所帮助〜

回答

0
+0

哦,tks。我会先看看 –

+0

是否有可能使用bundle在主活动中存储一些数据,然后从一个片段中取回数据?我真的想要一些易于使用的东西,tks –

+0

任何更新?请帮助。我现在正在我的程序中创建一个片段,所以我无法在mainxml中注册我的片段。任何人都可以帮我解决这个问题? >< –

0

托尼,在链接http://developer.android.com/training/basics/fragments/communicating.html

ArticleFragment newFragment = new ArticleFragment(); 
Bundle args = new Bundle(); 
args.putInt(ArticleFragment.ARG_POSITION, position); 
newFragment.setArguments(args); 

上面的代码片段允许在MainActivity传递一个int数据到ArticleFragment类。

ArticleFragment类然后可以使用下面的代码片段来读取int数据,说它的onCreate方法。

int position = getArguments().getInt(ARG_POSITION);