Do tego celu użyłem ImageButton. W definicji XML zobaczysz te dwa atrybuty:
- android: background - rysowany do użycia jako tło.
- android: scr - ustawia drawable jako zawartość tego ImageView.
Mamy więc dwie rysunki: tło i źródło. W twoim przykładzie źródłem będzie triagle (drawable / trianlge):
|\
| \
|__\
Tło jest kwadratowe (do rysowania / kwadratowe):
_____________
| |
| |
| |
| |
|____________|
Oto przykład ImageButton xml:
<ImageButton
...
android:src="@drawable/triangle"
android:background="@drawable/square">
Wynik:
_____________
| |
| |\ |
| | \ |
| |__\ |
|____________|
Również do rysowania jako kwadrat, może mieć kilka różnych stanów (wciśnięty, zogniskowany). I możesz zwiększyć rozmiar do rysowania tła za pomocą wyściółek.
Na wszelki wypadek, oto przykład tła, które można wyciągnąć z paska akcji Android Compat:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:state_enabled="false" android:state_pressed="true" android:drawable="@drawable/abc_list_selector_disabled_holo_dark" />
<item android:state_focused="true" android:state_enabled="false" android:drawable="@drawable/abc_list_selector_disabled_holo_dark" />
<item android:state_focused="true" android:state_pressed="true" android:drawable="@drawable/abc_list_selector_background_transition_holo_dark" />
<item android:state_focused="false" android:state_pressed="true" android:drawable="@drawable/abc_list_selector_background_transition_holo_dark" />
<item android:state_focused="true" android:drawable="@drawable/abc_list_focused_holo" />
<item android:drawable="@android:color/transparent" />
</selector>