PagerTitleStripを使用してタイトルビューページャーを設定する際に問題が発生しました。ビューページャーにPagerTitleStripの子ビューを追加しました。
各ページに適用するタイトル文字列はどこに提供できますか?
ページアダプタクラスでページタイトルを設定するにはどうすればよいですか?
PagerTitleStripを使用してタイトルビューページャーを設定する際に問題が発生しました。ビューページャーにPagerTitleStripの子ビューを追加しました。
各ページに適用するタイトル文字列はどこに提供できますか?
ページアダプタクラスでページタイトルを設定するにはどうすればよいですか?
getPageTitleメソッドをオーバーライドし、ページ文字列の静的配列をメソッドに提供します。
String [] titlesArray =
new String []{
page1,
page2,
page3
};
public CharSequence getPageTitle(int position) {
return titlesArray [position];
}
これが完全な例です。を実装する必要がありますpublic CharSequence getPageTitle(int position)
。
public class ViewPagerAdapter extends FragmentPagerAdapter {
private final List<Fragment> mFragmentList = new ArrayList<>();
public ViewPagerAdapter(FragmentManager manager) {
super(manager);
}
@Override
public int getCount() {
return mFragmentList.size();
}
public void addFragment(Fragment fragment) {
mFragmentList.add(fragment);
}
@Override
public Fragment getItem(int position) {
if(position == 0){
return FragmentInner1.newInstance();
}
else {
return FragmentInner2.newInstance();
}
}
@Override
public CharSequence getPageTitle(int position) {
if(position == 0){
// public static final String PAGE_TITLE = "My Title #1" is within the layout FragmentInner1;
return FragmentInner1.PAGE_TITLE;
}
else {
// public static final String PAGE_TITLE = "My Title #2" is within the layout FragmentInner2;
return FragmentInner2.PAGE_TITLE;
}
}
}