2012-05-10 21 views
6

Sono solo un principiante con Android. Voglio che il pulsante cambi il suo colore al passaggio del mouse.
Non so come farlo in Android. Può essere fatto?Cambio colore pulsante su hover

View per un pulsante:

<Button 
    android:id="@+id/b8" 
    android:text="click me" 
    style="?android:attr/buttonStyleSmall" 
    android:textSize="20dp" /> 
+0

prova riferendosi a - http : //stackoverflow.com/questions/5828148/mouseover-effect-from-xml – Keith

+0

Ecco una risorsa promettente: http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/ view/Hover.html –

+1

@ColorState c'è un mouse (incluso il cursore del mouse, ecc.) se ne connetti uno (dovrebbe funzionare su qualsiasi cosa> = Honeycomb). E c'è 'android: state_hovered' per i drawable di stato esattamente per questo in SDK 14+ http://www.youtube.com/watch?v=3w439neLjcc – zapl

risposta

2

È necessario utilizzare ciò che è chiamato un selector.

Si può leggere su di loro e ottenere un tutorial da this site.

Tenete a mente che non c'è davvero un concetto in Android come "hover", in quanto non è possibile posizionare il dito sul display. Ma puoi creare selettori per, per esempio, quando un pulsante è attivo. Normalmente un pulsante può avere tre stati: normale, focalizzato e premuto.

+1

No, non è possibile posizionare il dito sul display, ma è possibile passare con il mouse su uno stilo o un puntatore del mouse sulla vista. – Veeti

+0

Esiste davvero uno stato di "passaggio del mouse", così come un mucchio di altri, non solo quelli che hai elencato. Considera che l'app può essere eseguita non solo su un normale telefono, ma su una varietà di dispositivi, come la TV, ad esempio – Anton

+0

In realtà c'è uno stato_stato: http://developer.android.com/guide/topics/resources/drawable -resource.html e questo è del 2011 –

0

Il passaggio del mouse su Android è possibile: tutti i dispositivi dotati di trackball o tasti freccia D-pad o tastiera QWERTY possono spostare il "passaggio del mouse" o mettere a fuoco tutto ciò che è pressabile (selezionabile). Quindi, sul mio G1 per esempio, premi la trackball per premerla nello stato .

3

La particolare funzionalità di passaggio del mouse così come la conosciamo, è supportata su Android OS 4.0 e versioni successive. Le viste hanno onHoverListeners(). Isnt finalmente grande

+0

Che bello !!! – Feona

+0

Gentilmente vota la mia risposta: P – samreen

+0

Cita fonti per favore? –

1

Ecco xml-- hover.xml -

<item android:drawable="@drawable/image__hover" android:state_focused="false" android:state_pressed="true"/> 
<item android:drawable="@drawable/normalimage"/> 

e come lo uso in Pulsante per il cambiamento di colore al passaggio del mouse

<Button 
         android:layout_width="match_parent" 
         android:layout_height="match_parent" 
         android:background="@drawable/hover" 
         ></Button> 
Problemi correlati