Я попытался добавить высоту к своей пользовательской кнопке, но в результате получилось:
Как видите, тень обрезана. Я пытался искать в StackOverflow и Google, и я нашел похожий вопрос, но не получил ответов :)
XML:
<Button
android:id="@+id/email_sign_in_button"
android:layout_width="141dp"
android:layout_height="45dp"
android:textAlignment="gravity"
android:text="@string/action_sign_in"
android:gravity="center_horizontal"
android:elevation="4dp" />
Вот мои пользовательские стили кнопок.
button.xml:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_enabled="false"
android:drawable="@drawable/button_disabled" />
<item
android:state_pressed="true"
android:state_enabled="true"
android:drawable="@drawable/button_pressed" />
<item
android:state_focused="true"
android:state_enabled="true"
android:drawable="@drawable/button_regular" />
<item
android:state_enabled="true"
android:drawable="@drawable/button_regular" />
</selector>
Стиль, когда не нажата.
button_regular.xml:
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient android:angle="-90"
android:centerX="10"
android:centerY="10"
android:endColor="#30bbff"
android:gradientRadius="10"
android:startColor="#0081c0"
android:type="linear"/>
<stroke android:width="5dip" android:color="#ffffff" />
<corners android:radius="20dip"/>
<padding android:left="7dp"
android:top="7dp"/>
</shape>