我正在使用TabLayout
设计库我想要实现的是
我已经尝试了很多教程,我可以通过自定义选项卡来实现它,但是当选择选项卡时会出现限制我想要更改文本颜色以及图标的图像可以通过参考我目前读到的任何教程来实现。到目前为止,我已在FragmentStatePagerAdapter
public View getTabView(int position) {
View tab = LayoutInflater.from(mContext).inflate(R.layout.tabbar_view, null);
TextView tabText = (TextView) tab.findViewById(R.id.tabText);
ImageView tabImage = (ImageView) tab.findViewById(R.id.tabImage);
tabText.setText(mFragmentTitles.get(position));
tabImage.setBackgroundResource(mFragmentIcons.get(position));
if (position == 0) {
tab.setSelected(true);
}
return tab;
}
答案 0 :(得分:2)
更新设计库以匹配材料设计"带有图标和文字的标签"规格,因此您不需要自定义标签视图。
但是在当前版本(23.1.1)中,只有文本颜色与规范匹配(标签聚焦 - #fff,tab unfocused - 70%#fff)。因此,您可以使用ColorStateList
返回的getTabTextColors()
使用DrawableCompat.setTintList(ColorStateList)
为图标着色。
尝试使用此要点https://gist.github.com/mikovali/7a89b505cd6306bb94a8。删除行tabs.setTabTextColors(Color.RED, Color.GREEN)
应足以匹配深色工具栏上的文本和图标规范。