I-Taste mit etwas Schatten erstellt einen Stil mit:benutzerdefinierte Schaltfläche: Stil ändern, wenn sie gedrückt
<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>
Dies trifft einen weißen Schatten auf den Text der Schaltfläche in seinen normalen Zustand. Ich habe mich nur gefragt, ob jemand weiß, ob es eine Möglichkeit gibt, diesen Schatten zu entfernen, wenn der Knopf gedrückt ist. Mit anderen Worten, gibt es eine Möglichkeit, einen anderen Stil anzuwenden, wenn sich die Schaltfläche in einem anderen (gedrückten) Zustand befindet?
Vielen Dank im Voraus!
bearbeiten
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>
mein Layout:
<Button
...
android:background="@drawable/button"/>
Diese Methode funktioniert nicht ... die ColorStateList erlaubt mir nur die Farbe des Textes in verschiedenen Zuständen zu ändern. Ich wollte den Stil ändern (z. B. die Textgröße beim Drücken erhöhen oder den Schatten entfernen, wenn er gedrückt wird) für verschiedene Zustände. – user440308
Dies kann mehr als nur Farben, Sie können ganze Zeichnungsdateien erstellen, die in XML definiert sind. Sie wenden den Stil einfach auf Ihr Zeichen an. – schwiz
Hmm. Ich kann es nicht zur Arbeit bringen. Ich habe einen neuen Stil namens "bold" erstellt und eine weitere XML-Datei namens "button_test.xml" erstellt, die einen Selektor mit den verschiedenen Zuständen (gedrückt, fokussiert, normal) enthält. Ich bin mir nicht sicher, wie ich "button_test.xml" in meinem Layout referenzieren soll. – user440308