9

Nella mia app ho impostato la barra di barra degli strumenti e status di oggetti condivisi as suggested in option #2 in this postAndroid - barra degli strumenti e la barra di stato come oggetti condivisi con contenuti cambia

Il comportamento generale e contorno della barra degli strumenti e le schede sono eccellenti - l'unico problema è che quando passo all'attività B alcuni dei testi e delle icone cambiano, e attualmente la modifica viene eseguita dopo il completamento della transizione dell'elemento condiviso.

Ho provato ad aggiungere uno SharedElementCallback e in esso per ciclo sui figli della barra degli strumenti e le schede e tutti aggiungere una transizione Fade - ma non ha influenzato il comportamento della barra degli strumenti e contenuti scheda.

Qualche idea su come procedere da qui?

screenshot Aggiunto dopo commento:

attività A

In Activity A

Attività B

In Activity B

+0

elaborato signore, cambiare il modo, si può dare le immagini? – Elltz

+0

Qual è il tuo comportamento desiderato? "* quando passo all'attività B alcuni dei testi e delle icone stanno cambiando *" - le attività dovrebbero essere componenti indipendenti della tua applicazione, perché il testo e/o le icone dovrebbero cambiare quando si passa all'attività? – Simas

+0

quello che voglio è una transizione graduale nella barra degli strumenti da Attività A a B - che significa un po 'di dissolvenza delle icone e del testo presentato in A e dissolvenza delle icone e del testo presentato in B. Attualmente lo sfondo è la transizione ok ma il testo e le icone passare quando l'animazione completa –

risposta

1

Ogni attività ha il proprio menu, quindi bisogna creare il menu per ognuno, anche se sono uguali.

Tuttavia, se si preferisce, è possibile creare un solo menu e creare una classe personalizzata per manipolare il menù; Quindi chiami questa classe personalizzata su onCreateOptionsMenu e onOptionsItemSelected da qualsiasi attività.

Il seguente codice è un esempio.

classe personalizzata:

public class MenuActionBar { 

    public static void createOptionsMenu(final Activity activity, Menu menu) { 

     activity.getMenuInflater().inflate(R.menu.yourmenu, menu); 

     // Do whatever you wanna do 

    } 

    public static boolean optionsItemSelected(Activity activity, MenuItem item) { 

     // Do whatever you wanna do 

    } 

} 

attività:

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 

    MenuActionBar.createOptionsMenu(this, menu); 

    return super.onCreateOptionsMenu(menu); 

} 

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 

    return MenuActionBar.optionsItemSelected(this, item) 
      ? true : super.onOptionsItemSelected(item); 

} 
+0

la domanda è: come animare la transizione da un menu all'altro –

+0

Ma lei ha detto che sta funzionando bene, e l'unico problema è le icone ei testi che cambiano. Prova a inserire il codice di animazione nella classe personalizzata. –

+0

cambiano senza animazione - la parte che funziona bene è la parte in cui l'intera barra degli strumenti non è sfarfallio - che è il problema che è stato risolto nel post che ho collegato a –

Problemi correlati