Autore Topic: button pressed  (Letto 261 volte)

Offline filipposapo

  • Utente junior
  • **
  • Post: 135
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    Tablet Samsung Note 10.1
  • Sistema operativo:
    Windows 8
button pressed
« il: 19 Marzo 2014, 18:35:41 CET »
0
Salve a tutti, Come faccio a evidenziare il touch di un button facendone modificare il colore se utilizzo una immagine di background;
Grazie a tutti

Offline Noisemaker

  • Utente junior
  • **
  • Post: 58
  • Respect: +1
    • Mostra profilo
Re:button pressed
« Risposta #1 il: 06 Aprile 2014, 17:35:08 CEST »
0
Devi definire uno stile per il pulsante e un xml che gestisca gli stati (ovvero che assegni al pulsante forma, colore, etc diversi a seconda che sia premuto, disabilitato, etc.)
Ad esempio

style.xml
Codice: [Seleziona]
<style name="MyButton">
        <item name="android:layout_width">wrap_content</item>
        <item name="android:layout_height">wrap_content</item>
        <item name="android:textStyle">bold</item>
        <item name="android:textColor">#FFFFFF</item>
        <item name="android:background">@drawable/my_button</item>
        <item name="android:padding">10dp</item>
    </style>

my_button.xml
Codice: [Seleziona]
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_window_focused="false" android:state_enabled="true" android:drawable="<drawable da usare, es img>" />
    <item android:state_window_focused="false" android:state_enabled="false" android:drawable="<drawable da usare, es img>" />
    <item android:state_pressed="true" android:drawable="<drawable da usare, es img>" />
    <item android:state_focused="true" android:state_enabled="true" android:drawable="<drawable da usare, es img>" />
    <item android:state_enabled="true" android:drawable="<drawable da usare, es img>" />
    <item android:state_focused="true" android:drawable="<drawable da usare, es img>" />
    <item android:drawable="<drawable da usare, es img>" />
</selector>
Come puoi vedere ci sono delle combinazioni di stati (es se il bottone è abilitato o meno, se ha il focus, ecc...) e per ognuno puoi impostare un diverso drawable (ad esempio la tua immagine).

Ti consiglio di provare a creare un pulsante con questo tool http://android-holo-colors.com/ che ti da già tutte le "res" pronte. Leggile con calma e cerca di capire la logica in base anche a quello che ti ho spiegato sopra :)