我有3个标签但是我有一个片段。是否有可能为3个标签使用一个片段?
目前我在FragmentPagerAdapter中有这个:
@Override
public Fragment getItem(int position) {
if (position == 0) {
return new FragmentTwo(region,"1");
} else if(position == 1){
return new FragmentTwo(region,"2");
}
return new FragmentTwo(region,"3");
}
但只在一个标签中显示所有数据..
我已编辑了我的代码,但仍在一个标签中获取所有数据。 目前:
@Override
public Fragment getItem(int position) {
return FragmentTwo.newInstance(region, position);
}
&安培;&安培;
static FragmentTwo newInstance(String region,int position) {
FragmentTwo frag=new FragmentTwo();
Bundle args=new Bundle();
args.putInt("KEY_POSITION", position);
args.putString("REGION", region);
if(position == 0){
args.putString("TYPE","A");
}
else if(position == 0){
args.putString("TYPE","B");
}
else{
args.putString("TYPE","C");
}
frag.setArguments(args);
return(frag);
}
为了创建我的FragmentPagerAdapter,我正在调用getSupportFragmentManager();
答案 0 :(得分:1)
是的,您可以创建FragmentTwo的实例,将其保存在字段/变量中,并将其用作函数中的返回数据。
需要注意的一点是,您不应该使用带有Fragments参数的构造函数。使用Bundle和参数。带参数的构造函数可能会导致Fragments出现问题。
请看一下这篇文章:Best practice for instantiating a new Android Fragment