2

我在使用 PagerTitleStrip 设置标题视图寻呼机时遇到问题。我在视图寻呼机中添加了 PagerTitleStrip 的子视图。

我在哪里可以提供标题字符串以应用于每个页面?

如何在 Page Adapter 类中设置页面标题?

4

2 回答 2

4

覆盖 getPageTitle 方法并向其提供页面字符串的静态数组。

String [] titlesArray = 
    new String []{ 
        page1, 
        page2,
        page3
    };

public CharSequence getPageTitle(int position) {
    return titlesArray [position];
}
于 2012-05-16T09:44:05.730 回答
0

这是完整的示例。你必须实施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;
        }
    }
}
于 2018-01-05T03:12:58.307 回答