TabLayout 如何调整图标和文字之间的距离
商城项目中,有时底部标签栏中的图标和文字之间的距离需要调整,可在TabLayout所在的类中输入如下代码:
// 调整TabLayout中图片与字体之间的距离
LinearLayout v0 = (LinearLayout) tabLayout.getChildAt(0); // 获取底部标签栏(图标、含文字)
for (int i = 0; i<5; i++){
LinearLayout v1 = (LinearLayout) v0.getChildAt(i); //获取含图标、文字的标签
View v2 = (View) v1.getChildAt(0); //得到图标
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams
(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
layoutParams.setMargins(10,0,10,0); //4个参数按顺序分别是左上右下
v2.setLayoutParams(layoutParams);
}
其思路就是拿出图标,修改其上下的Margin值,从而改变其与文字之间的距离。其中tabLayout是TabLayout的对象,其方法getChildAt(0)是得到含图标、文字的“长”标题栏LinearLayout对象v0。再通过循环,截取一个个含图标、文字的上下结构的标签v1,再从v1中获取图标(v2),并修改v2的Margin。