Для этого я использовал ImageButton. В определении xml вы увидите эти два атрибута:
- android: background - чертеж для использования в качестве фона.
- android: scr - Устанавливает возможность рисования в качестве содержимого этого ImageView.
Итак, у нас есть два чертежа: фоновый и исходный. В вашем примере источником будет треугольник (drawable / trianlge):
|\
| \
|__\
И фон квадратный (вытяжной / квадратный):
_____________
| |
| |
| |
| |
|____________|
Вот пример ImageButton xml:
<ImageButton
...
android:src="@drawable/triangle"
android:background="@drawable/square">
Результат:
_____________
| |
| |\ |
| | \ |
| |__\ |
|____________|
Также квадратный, может иметь несколько разных состояний (нажат, сфокусирован). И вы можете увеличить размер фона с помощью прокладок.
На всякий случай вот пример фона, который можно рисовать из панели действий 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>