在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)
PagerTabStrip
和 PagerTitleStrip
位于 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/