2017-06-02 109 views
0

我有一个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动态设置为选项卡。

任何帮助表示赞赏。 在此先感谢。

回答

0

试试这个 -

tabLayout.setBackground(ContextCompat.getDrawable(this, R.drawable.your_drawable)); 

试试这个改变第一的位置 -

tabLayout.getTabAt(0).setCustomView(R.drawable.your_layout); 
+0

这为整个tablayout背景。我需要的是为每个选项卡单独设置背景,并为页面选择和未选定状态绘制一个图层列表。 –

+0

我会一直设置所有选项卡,但这不适用于选项卡布局状态列表drawables。 –

相关问题