我成功创建了我的第一个ViewPager滑块。当我去创建选项卡时,我发现this article iws已被弃用。我还发现我可以使用PagerTitleStrip,它工作但是太难看了。我找到了一个用于自定义的库,但我需要学习如何以艰难的方式完成它,因为我想了解Android的工作原理。有人可以帮我理解它的工作原理吗?
答案 0 :(得分:1)
试试这个
TabLayout tabLayout = (TabLayout) findViewById(R.id.tabs);
tabLayout.setupWithViewPager(viewPager);
private void setUpViewPager(ViewPager viewPager)
{
Adapter adapter=new Adapter(getSupportFragmentManager());
adapter.addFragment(new About(),"Article 1");
adapter.addFragment(new About(),"Article 2");
adapter.addFragment(new About(),"Article 3");
viewPager.setAdapter(adapter);
}
请参阅此处:http://coderzpassion.com/working-appbarlayout-like-whatsapp/
答案 1 :(得分:1)
Here is a guide Google建议使用Material Design中的标签。
特别是,支持设计库中的TabLayout类可能是您所追求的。
它的默认值非常自然,如下所示(取自上面的Material Design链接)。
答案 2 :(得分:0)
试试这个: - 添加 PageTabStrip 元素作为ViewPager的子元素
<android.support.v4.view.ViewPager
android:id="@+id/myViewPager"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/navigation_toolbar">
<android.support.v4.view.PagerTabStrip
android:id="@+id/pager_tab"
style="@style/AppToolbar"
android:layout_width="match_parent"
android:layout_height="?actionBarSize"/>
</android.support.v4.view.ViewPager>
确保在扩展FragmentPagerAdapter的自定义适配器中实现以下方法:
@Override
public CharSequence getPageTitle(int position) {
switch (position){
case 0:
return "Title 1";
case 1:
return "Title 2";
default:
return "null";
}
}