2016-01-01 15 views
10

Sto usando il menu floatingaction personalizzato. Devo implementare l'animazione della scala sul pulsante Mostra/nascondi come qui floating action button behaviournascondi/mostra fab con animazione scala

C'è un modo per farlo?

+2

Utilizzare il fab.show() e fab.hide() metodi forniti dalla lib disegno. Puoi anche controllare [questo] (http://stackoverflow.com/questions/30937028/how-to-animate-floatingactionbutton-like-in-google-app-for-android) – Skynet

+0

la sua libreria non Android è la sua abitudine menu fab [qui] (https://github.com/Clans/FloatingActionButton) – JosephM

+0

Perché si desidera utilizzare una libreria quando il framework fornisce questo controllo per te? – Skynet

risposta

13

È possibile utilizzare queste animazioni di scala per il pulsante fab, ha lo stesso effetto del pulsante di progettazione lib fab.

scale_up.xml

<?xml version="1.0" encoding="utf-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android" > 
    <scale 
     android:duration="100" 
     android:fromXScale="0" 
     android:fromYScale="0" 
     android:pivotX="85%" 
     android:pivotY="85%" 
     android:toXScale="1.0" 
     android:toYScale="1.0" /> 
</set> 

scale_down.xml

<?xml version="1.0" encoding="utf-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android" > 
    <scale 
     android:duration="100" 
     android:fromXScale="1.0" 
     android:fromYScale="1.0" 
     android:pivotX="85%" 
     android:pivotY="85%" 
     android:toXScale="0" 
     android:toYScale="0" /> 
</set> 
+0

ha funzionato per me grazie @max – JosephM

+6

Dove lo metto, come lo applico? –

38

La revisione disegno libreria di supporto 22.2.1 aggiunto il hide() e show() metodi alla classe FloatingActionButton , quindi puoi usarli da ora in poi.

FloatingActionButton mFab; 
mFab.hide(); 
mFab.show(); 

È possibile applicare la propria animazione su di esso. Per ulteriori informazioni check this.

+0

collegamento roba di google è ridicolo, abbiamo bisogno di esempio – djdance

+0

risposta giusta :) –

+0

questo dovrebbe essere contrassegnato come la risposta giusta – icortesi

5

Caricare queste animazioni nella visualizzazione personalizzata. Non dimenticare di impostare il punto di articolazione al 50% e l'interpolatore all'interpolatore lineare.

scale_up.xml

<?xml version="1.0" encoding="utf-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android" > 
    <scale 
     android:duration="100" 
     android:fromXScale="0" 
     android:fromYScale="0" 
     android:interpolator="@android:anim/linear_interpolator" 
     android:pivotX="50%" 
     android:pivotY="50%" 
     android:toXScale="1.0" 
     android:toYScale="1.0" /> 
</set> 

scale_down.xml

<?xml version="1.0" encoding="utf-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android" > 
    <scale 
     android:duration="100" 
     android:fromXScale="1.0" 
     android:fromYScale="1.0" 
     android:interpolator="@android:anim/linear_interpolator" 
     android:pivotX="50%" 
     android:pivotY="50%" 
     android:toXScale="0" 
     android:toYScale="0" /> 
</set>