Вместо использования фигур в вашем чертеже, вы можете использовать атрибут android:drawable
, который принимает цветовой ресурс (например, @ color / black).
layout.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/myview"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="top"
android:background="@drawable/myDrawable">
<!-- other views in layout-->
</LinearLayout>
my_drawable.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- focused -->
<item android:state_focused="true" android:drawable="@color/YOUR_COLOR_HERE" />
<!-- focused and pressed-->
<item android:state_focused="true" android:state_pressed="true" android:drawable="@color/YOUR_COLOR_HERE" />
<!-- pressed -->
<item android:state_pressed="true" android:drawable="@color/YOUR_COLOR_HERE" />
<!-- default -->
<item android:drawable="@color/YOUR_COLOR_HERE" />
</selector>
В my_drawable.xml
необходимо убедиться, что указанные вами цвета определены в res/values/colors.xml
, иначе это не будетРабота.
Если вы хотите использовать изображение вместо смены цвета с цветного ресурса на ресурс для рисования.Пример:
android:drawable="@color/YOUR_COLOR_HERE"
android:drawable="@drawable/YOUR_IMAGE_HERE"