Android中应用TabLayout实现顶部Tab小菜单加滑动效果

TabLayout控件是2015年google大会上,google发布了新的Android Support Design,里面包含了几个新的控件,其中就有一个TabLayout,它就可以完成TabPageIndicator的效果,而且还是官方的,最好的是它可以兼容到2.2以上版本,包括2.2。

在android stutio应用TabLayout控件只要在build.gradle中加入compile 'com.android.support:design:23.2.0'即可。

一般实现顶部小菜单加侧滑,只要TabLayout+Viewpager就可以实现。

在activitylayout布局中添加TabLayout+Viewpager控件。

TabLayout中:在JAVA代码中:

tabLayout.setTabGravity(TabLayout.GRAVITY_FILL);

tabLayout.setTabMode(TabLayout.MODE_FIXED);

在XML布局中:

app:tabGravity="fill"

app:tabMode="fixed"

其中,tabGravity有GRAVITY_CENTER 和 GRAVITY_FILL两种,GRAVITY_CENTER为居中,GRAVITY_FILL为尽可能填充。

tabMode有MODE_FIXED和MODE_SCROLLABLE两种,MODE_FIXED为固定tabs,并同时显示所有的tabs,MODE_SCROLLABLE为

可滚动tabs,显示一部分tabs,在这个模式下能包含长标签和大量的tabs,最好用于用户不需要直接比较tabs。


实现顶部小菜单加侧滑只要实现三个方法:

mViewPager.setAdapter(mAdapter);//给ViewPager设置适配器
mTabLayout.setTabsFromPagerAdapter(mAdapter);//给Tabs设置适配器
mTabLayout.setupWithViewPager(mViewPager);//将TabLayout和ViewPager关联起来。


其中PagerAdapter中多重写一个方法,

                                                           @Override

public CharSequence getPageTitle(int position) {

return titles[position]; //标题数组位置

}

你可能感兴趣的:(安卓应用框架设计)