Domanda

E 'possibile mostrare un FragmentDialog quando viene selezionato nella ActionBar una scheda?

Il metodo onTabSelected() avviene all'interno di una transazione che viene commesso dopo l'esecuzione delle finiture metodo. Tuttavia, il metodo show() in DialogFragment accade anche in una transazione automaticamente, quindi se si tenta di visualizzare la finestra di quando si seleziona la scheda si ottiene un RuntimeException perché la transazione viene commesso due volte.

sarà apprezzato Eventuali suggerimenti.

È stato utile?

Soluzione

Basta ignorare il FragmentTransaction in dotazione.

Ad esempio, è necessario fare questo se si utilizza il Compatibility Library Android (ACL), perché il FragmentTransaction si ottiene dalla barra delle operazioni è un FragmentTransaction Android 3.0, non un FragmentTransaction ACL. Quindi, si ignora il passato in uno e utilizzare il proprio.

Allo stesso modo, mi aspetto che si può ignorare il FragmentTransaction e visualizzare un DialogFragment te stesso senza problemi.

Se il UX farà alcun senso è un altro problema. Quando l'utente accetta la finestra di dialogo La scheda mostra ... niente?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top