Как изменить положение текста для разных состояний кнопок?Позиция 3D-кнопки Android
На изображении вы можете увидеть, как его внешний вид, как сейчас:
Drawable
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_pressed="true">
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:top="4dp">
<shape android:shape="rectangle">
<solid android:color="#DCDBDB" />
<corners android:radius="7dp" />
<stroke android:width="1dp" android:color="#B1B1B1"/>
</shape>
</item>
<item android:bottom="4.5dp" android:left="1.5dp" android:right="1.5dp" android:top="5.5dp">
<shape android:shape="rectangle" android:gravity="bottom">
<solid android:color="#F2F1F1" />
<corners android:radius="6dp" />
<stroke android:width="1dp" android:color="#FFFFFF"/>
</shape>
</item>
</layer-list>
</item>
<item>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="rectangle">
<solid android:color="#DCDBDB" />
<corners android:radius="7dp" />
<stroke android:width="1dp" android:color="#B1B1B1"/>
</shape>
</item>
<item android:bottom="8.5dp" android:left="1.5dp" android:right="1.5dp" android:top="1.5dp">
<shape android:shape="rectangle">
<solid android:color="#F2F1F1" />
<corners android:radius="6dp" />
<stroke android:width="1dp" android:color="#FFFFFF"/>
</shape>
</item>
</layer-list>
</item>
</selector>
Несколько дней назад я спросил подобный вопрос - Android 3D button src padding, но для текста я не могу использовать этот трюк:/(или не знаю, как).
я могу сделать это только с XML? – Shaddow
@Shaddow: Нет, вы не можете. Только чертежи и цвета могут определять списки состояний. – corsair992
OK Я пробовал ваш код (но, как обычно, у меня проблемы: /) Его набор просто BOTTOM gravity, поэтому, когда я нажимаю, текст находится в нижнем левом углу. – Shaddow