android - 向 ViewPager 添加标题

标签 android xml android-layout android-viewpager viewpagerindicator

this tutorial的帮助下我为我的 Android 应用程序创建了一个 PagerAdapter。

现在我喜欢为每个页面添加标题(就像在 Play 商店中一样)。 我找到了这个图书馆:http://viewpagerindicator.com/ 但我找不到如何在我的应用程序中实现它或如何使用它。

有人可以向我解释一下用法吗?

这是我的 PagerAdapter 的代码,如果需要的话:

public class MyPagerAdapter extends PagerAdapter {

    public int getCount() {
        return 5;
    }

    public Object instantiateItem(View collection, int position) {

        LayoutInflater inflater = (LayoutInflater) collection.getContext()
                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);

        int resId = 0;

        switch(position) {
            case 0:
                resId = R.layout.farleft;
                break;
            case 1:
                resId = R.layout.left;
                break;
            case 2:
                resId = R.layout.middle;
                break;
            case 3:
                resId = R.layout.right;
                break;
            case 4:
                resId = R.layout.farright;
                break;
        }

        View view = inflater.inflate(resId, null);

        ((ViewPager) collection).addView(view, 0);

        return view;
    }

    @Override
    public void destroyItem(View arg0, int arg1, Object arg2) {
        ((ViewPager) arg0).removeView((View) arg2);
    }

    @Override
    public boolean isViewFromObject(View arg0, Object arg1) {
        return arg0 == ((View) arg1);
    }

    @Override
    public Parcelable saveState() {
        return null;
    }
}

最佳答案

Now I like to add a title to each page (like in the Play Store)

PagerTabStripPagerTitleStrip 位于 Android 支持包中,您从中获得了 ViewPager。只需将其中一个添加为您的 ViewPager 的子项,并使用 android:layout_gravity 指示您是希望 strip 位于顶部还是底部。然后,如 Luksprog 所示,将 getPageTitle() 添加到您的 PagerAdapter

Here is a sample project演示 PagerTabStrip 的使用。

But I can't find out how to implement it in my app or how to use it.

基本说明在您链接到的页面上。将 ViewPagerIndicator 小部件之一添加到您的布局,并将其放置在您想要的位置(例如,使用 vertical LinearLayout 将一个小部件堆叠在您的 ViewPager 上方) .有时在 ViewPager 上调用 setAdapter() 后,在指示器小部件上调用 setViewPager(),为它提供 ViewPager。同样,您还需要在 PagerAdapter 上实现 getPageTitle()

关于android - 向 ViewPager 添加标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12178276/

相关文章:

android - Android 问题中的 Spinner OnItemSelectedListener 方法

sql - 如何在 SQL Server 中使用 AXSD?

java - 线性布局对于空 View 的行为如何?

android - 向下移动线性布局

java - 在 string.xml 中将占位符与 % 符号一起用于 String.format()

android - SciChart AutoRange 对于小值无法正常工作

android - 我使用了 appodeal,我的应用程序显示错误 "admob not found"请

java - 将 XML 解析为 Java

java - 当我在较小的设备上运行程序时,如何删除 imageView

Android setVariable(BR.xyz, model) 和 databinding.setXYZ(model) 有什么区别