я создал кнопку с некоторой тени, используя стиль:пользовательские кнопки: стиль изменения при нажатии
<style name="test">
<item name="android:shadowColor">#FFFFFF</item>
<item name="android:shadowRadius">1</item>
<item name="android:shadowDx">1</item>
<item name="android:shadowDy">1</item>
</style>
Это относится белая тень на текст кнопки в нормальном состоянии. Мне просто интересно, знает ли кто-нибудь, есть ли способ удалить эту тень, когда кнопка нажата. Другими словами, существует ли способ применить другой стиль, когда кнопка находится в другом (нажатом) состоянии?
Заранее благодарен!
редактировать
bold.xml:
<resources>
<style name="bold_text">
<item name="android:textStyle">bold</item>
</style>
</resources>
button.xml:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/test_pressed"
style="@style/bold_text"
android:state_pressed="true"/>
<item android:drawable="@drawable/test_focused"
android:state_focused="true"/>
<item android:drawable="@drawable/test_normal"/>
</selector>
мой макет:
<Button
...
android:background="@drawable/button"/>
Этот метод не работает ... ColorStateList позволяет мне изменять цвет текста в разных состояниях. Я хотел изменить стиль (например, увеличивать размер текста при нажатии или удалять тень при нажатии) для разных состояний. – user440308
Это может сделать больше, чем просто цвета, вы можете делать целые рисунки, определенные в xml, вы просто применяете стиль к вашему рисунку. – schwiz
Хм. Кажется, я не могу заставить его работать. Я создал новый стиль под названием «полужирный» и создал другой XML-файл с именем «button_test.xml», содержащий селектор с различными состояниями (нажатый, сфокусированный, обычный). Я просто не уверен, как ссылаться на «button_test.xml» в моем макете. – user440308