28

Ho un TextView nella mia attività A. Come posso rendere la transizione di elemento condiviso di TextView dall'attività A e un titolo di CollapsingToolbarLayout.setTitle() dall'attività B?CollapsingToolbarLayout title come transizione di elemento condiviso

È possibile ottenere la vista titolo id dal codice sorgente CollapsingToolbarLayout?

Grazie per l'aiuto!

+0

In teoria è possibile nidificare un fittizio TextView con esattamente la stessa posizione, colore e dimensioni all'interno del CollapseingoolbarLayout. Quindi, subito dopo la fine della transizione, la nascondi e questo farà l'illusione. Ma ho avuto problemi con il corretto posizionamento all'interno di CollapsingToolbarLayout rispetto al fondo. È sempre stato un po 'scorretto. – WindRider

+4

@WindRider Sì, ho quasi raggiunto questo effetto allo stesso modo. Ma la soluzione migliore non è usare il titolo incorporato nel layout compresso, ma creare il proprio titolo TextView con il comportamento del coordinatore come qui: https://github.com/saulmm/CoordinatorBehaviorExample e utilizzarlo facilmente con le transizioni di elementi condivise. – Augusent

+0

10x per il buon consiglio e l'esempio! – WindRider

risposta

1

Puoi semplicemente usare la barra degli strumenti collassabile come destinazione dell'animazione e sembra ok, ma anima anche il pulsante posteriore o l'indicatore del cassetto che potrebbe non essere quello che desideri.

1

Ho avuto problemi simili. La mia app conteneva CollapsingToolbar che conteneva immagini e volevo condividere l'immagine che stava passando da ListView normale a CollapsingToolbar.

È necessario creare un TextView personalizzato e utilizzarlo come sostituzione del titolo effettivo in CollapsingToolbar. Inoltre, è necessario impostare il titolo effettivo sulla stringa vuota in modo che sembri nascosto.

È necessario esaminare la risposta this dove viene mostrato come utilizzare la visualizzazione personalizzata in CollapsingToolbar con l'ascoltatore necessario per replicare le animazioni del titolo normale. Potrebbe non sembrare identico, ma non riesco a pensare ad un'idea migliore. Spero sia stato utile.

Problemi correlati