Android如何以编程方式设置app:tabBackground属性?
问题描述:
我有一个tablayout连接到viewpager和tablayout显示使用选择器drawable显示气泡/点作为页面部分指示器。Android如何以编程方式设置app:tabBackground属性?
<android.support.design.widget.TabLayout
android:id="@+id/progress_type_tab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
app:tabBackground="@drawable/progress_assignment_tab_selector"
app:tabGravity="center"
app:tabIndicatorHeight="0dp" />
progress_assignment_tab_selector是选择绘制:
<?xml version="1.0" encoding="utf-8"?>
<item android:drawable="@drawable/progress_content_selected_dot"
android:state_selected="true"/>
<item android:drawable="@drawable/progress_default_dot"/>
我想动态改变app:tabBackground
在运行时。我没有找到一种方法来将选择器drwable动态设置为选项卡。
任何帮助表示赞赏。 在此先感谢。
答
试试这个 -
tabLayout.setBackground(ContextCompat.getDrawable(this, R.drawable.your_drawable));
试试这个改变第一的位置 -
tabLayout.getTabAt(0).setCustomView(R.drawable.your_layout);
这为整个tablayout背景。我需要的是为每个选项卡单独设置背景,并为页面选择和未选定状态绘制一个图层列表。 –
我会一直设置所有选项卡,但这不适用于选项卡布局状态列表drawables。 –