我是Android开发新手。我有一个活动,利用FragmentPagerAdapter来创建标签。一切工作正常,除了我希望每个选项卡有自己的唯一fragment.xml
文件,现在所有选项卡显示相同的片段(fragment_home.xml
)。Android - 每个标签的片段
我有一个怀疑的问题在于这样的代码:
public View onCreateView(LayoutInflater inflater,
ViewGroup container,
Bundle savedInstanceState)
{
View rootView = inflater.inflate(R.layout.fragment_home, container, false);
TextView textView = (TextView) rootView
.findViewById(R.id.section_label);
textView.setText(Integer.toString(getArguments()
.getInt(ARG_SECTION_NUMBER)));
return rootView;
}
EDIT 1
我已经加入另一片段类来表示另一片段。它有自己的OnCreateView()
方法,它可以扩展名为fragment_overview.xml
的XML文件并且工作正常。
现在我仍然坚持我希望这两个片段出现在不同的选项卡中的问题。
下面的代码在其getItem()
方法中创建了一个OverViewFragment
的实例。只有一个片段被返回,所以我如何使它成为多个片段?
public class SectionsPagerAdapter extends FragmentPagerAdapter {
public SectionsPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
// getItem is called to instantiate the fragment for the given page.
// Return a PlaceholderFragment (defined as a static inner class
// below).
return OverviewFragment.newInstance(position + 1);
}
@Override
public int getCount() {
// Show 3 total pages.
return 5;
}
@Override
public CharSequence getPageTitle(int position) {
Locale l = Locale.getDefault();
switch (position) {
case 0:
return getString(R.string.tab1).toUpperCase(l);
case 1:
return getString(R.string.tab2).toUpperCase(l);
}
return null;
}
}
好吧,如果他们都具有相同的功能,他们都在膨胀fragment_home。更改每个片段以扩充您希望它们解析的xml。 –
请原谅我的无知,我明白你的意思,但我不确定如何去实施它。 –
R.layout.fragment_home将其更改为您要使用的xml文件的标识。 –