Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/198.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在android设计库表格布局中选择时更改图标和标题颜色_Android_Android Tablayout - Fatal编程技术网

在android设计库表格布局中选择时更改图标和标题颜色

在android设计库表格布局中选择时更改图标和标题颜色,android,android-tablayout,Android,Android Tablayout,我正在使用设计库的TabLayout,我想实现的是 我已经尝试了很多教程,我可以通过自定义选项卡来实现它,但是当选择选项卡时会出现一个限制,我想更改文本颜色以及图标的图像,这是我目前阅读的任何教程都无法做到的。到目前为止,我已经在FragmentStatePagerAdapter public View getTabView(int position) { View tab = LayoutInflater.from(mContext).inflate(R.layout.tabbar_

我正在使用设计库的
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;
}

设计库已更新,以匹配材质设计“带图标和文本的选项卡”规格,因此您不需要自定义选项卡视图

但在当前版本(23.1.1)中,只有文本颜色与规范匹配(制表符聚焦-fff,制表符未聚焦-70%#fff)。因此,您可以使用
getTabTextColors()
返回的
ColorStateList
来使用
DrawableCompat.setTintList(ColorStateList)
为图标着色


试着用这个要点。删除行
tabs.setTabTextColors(Color.RED,Color.GREEN)
应足以匹配深色工具栏上文本和图标的规格。

保留在该方法中找到的
tabText
tabImage
视图的数组或列表,当选择/取消选择某个选项卡时,您可以对其进行任何更改。如果您想检查,我可以更改选项卡活动的图标,然后我将发布该代码。@MikeM。我会试试你的method@RajanBhavsar我想在设计库的
TabLayout
中找到它,请查看以下链接,这将有助于解决您的问题: