我有一个TabLayout。在那里我有一个动态添加行的tablelayout。 选择/单击TableRow时,我想将其背景颜色设置为Tab的按下或单击颜色。
我不想设置任何静态颜色,但想要使用默认主题颜色。如何获取Tablayout的颜色信息?
如何处理标签的左侧和右侧?这是我得到的并且在将tab_background.xml设置为所有选项卡的backgroundRsourse之后:
在左侧,两个图像都没有任何设置,但左右角是平滑的。 在右侧,两个图像都带有setings,看到所选标签的角落只是一个正方形,它们应该圆整或像没有任何设置的那些一样。 看来我必须使用tab_selected_bar_right和tab_selected_bar_left。我已将它们复制到我的drawable中,但无法弄清楚如何使用它们。在@mudit提供的下面的xml中提供什么设置。
请指导我。任何帮助都非常感谢。我赶时间。
由于
答案 0 :(得分:5)
在java文件中添加选项卡后添加此代码:
(我只添加了2个标签,如果您有更多标签,可以添加此标签)
TabWidget tw = getTabWidget();
View tab1View = tw.getChildAt(0);
tab1View.setBackgroundResource(R.drawable.tab_background);
View tab2View = tw.getChildAt(1);
tab2View.setBackgroundResource(R.drawable.tab_background);
代码tab_background.xml:
(把它放在可绘制的文件夹中)
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="false" android:state_selected="false"
android:state_pressed="false"
android:drawable="@drawable/tab_bg" />
<item android:state_focused="false" android:state_selected="true"
android:state_pressed="false" android:drawable="@drawable/tab_selected" />
<item android:state_focused="true" android:state_selected="false"
android:state_pressed="false"
android:drawable="@drawable/tab_bg" />
<item android:state_focused="true" android:state_selected="true"
android:state_pressed="false" android:drawable="@drawable/tab_selected" />
<item android:state_pressed="true"
android:drawable="@drawable/tab_selected" />
</selector>
答案 1 :(得分:0)
我解决了这个问题。我道歉,因为我之前没有提到它。对不起,我错过了。 @Yugandhar,感谢您的关注。