我目前已实现此布局HERE并仅使用9个视图用于顶部+底部的按钮和中心的TextView。为了使用3个视图制作这个,我理解这里,我们需要一个具有3个TextView的LinearLayout水平,他们需要使用Drawable Tops和Bottoms,问题是根据GIF,注意顶部背景+图标如何变化同时,我写了一个选择器,它结合了一个图层列表,但它没有用。
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true">
<layer-list>
<item>
<shape android:shape="rectangle">
<solid android:color="@android:color/transparent"/>
</shape>
</item>
<item>
<bitmap
android:gravity="center"
android:src="@drawable/ic_menu_down_colored"/>
</item>
</layer-list>
</item>
<item>
<layer-list>
<item>
<shape android:shape="rectangle">
<solid android:color="@color/purple"/>
</shape>
</item>
<item>
<bitmap
android:gravity="center"
android:src="@drawable/ic_menu_down_transparent"/>
</item>
</layer-list>
</item>
</selector>
有关如何使用XML或代码创建的复合drawable实现此目的的任何想法和建议都非常受欢迎