TabLayout使用中注意事项
作者:互联网
TabLayout
1.tabView如何撑满TabLayout
<android.support.design.widget.TabLayout
android:id="@+id/tab_layout"
android:layout_width="match_parent"
android:layout_height="0dp"
app:tabMinWidth="0dp"
app:tabMaxWidth="0dp"
app:tabPaddingStart="0dp"
app:tabPaddingEnd="0dp"
app:tabBackground="@android:color/transparent"
app:tabMode="fixed"
app:tabGravity="fill"
app:tabIndicator="@null"//设置tabLayout下面的线条为@null 28以下会编译不错,可以直接设置indica的高度为0就行
android:background="@color/gray_fd"
app:tabRippleColor="@android:color/transparent"//去水波纹,28以下会编译不过,不加也是ok的
/>
其中比较重要的几个属性:
app:tabMinWidth="0dp"
app:tabMaxWidth="0dp"
//这里纯粹是为了能够写横向带滑动的TabLayout的时候,每个TabView能够按照自己的绘制走,不用去考虑到底多大,加入上面两个就ok
app:tabPaddingStart="0dp"
app:tabPaddingEnd="0dp"
//上面,第一个是距离左边,第二个是距离右边,都设置了之后就会发现左边右边都没有距离
如果运行之后,发现上下有距离,那么就是setCustomView这里写得不对,正确写法
View tabView=LayoutInflater.from(this).inflate(R.layout.xxx, tabLayout,false);
2.TabLayout+ViewPager的联动
tabLayout.setupWithViewPager(viewPager);
该方法只适合 非 TabLayout+ViewPager+Fragment这种,或者自定义绘制VIew的情况
推荐
tabLayout.addOnTabSelectedListener(new OnTabSelectedListener() {
@Override
public void onTabSelected(TabLayout.Tab tab) {
//获取当前选中的position
int clickPosition=tab.getPosition();
viewPager.setCurrentItem(clickPosition,true);
}
@Override
public void onTabUnselected(TabLayout.Tab tab) {
}
@Override
public void onTabReselected(TabLayout.Tab tab) {
}
});
viewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(tabLayout));
}
标签:ViewPager,app,注意事项,0dp,TabLayout,tab,使用,tabLayout 来源: https://blog.csdn.net/ONLYMETAGAIN/article/details/89244512