2015-10-23 2 views
0

У меня есть активность в приложении для Android, у которого много фрагментов (скажем, A, B, C). У меня есть собственный фрагмент диалога, который я показываю, вызывая этот код из одного из фрагментов (скажем, A).Android: Можно ли подключить существующий DialogFragment к новому действию?

FragmentManager fm = getSupportFragmentManager(); 
EditNameDialog editNameDialog = EditNameDialog.newInstance("Some Title"); 
editNameDialog.show(fm, "fragment_edit_name"); 

Цвет, текст и т. Д. В фрагменте диалога зависят от некоторых параметров. Теперь этот фрагмент показан до тех пор, пока я нахожусь в одном из фрагментов A, B, C, потому что DialogFragment привязан к той же активности, к которой прикреплены фрагменты A, B, C.

Теперь в какой-то момент я перехожу к другому действию, которое вызывает появление диалогового окна. Я хочу, чтобы диалог показывался так, как будто он был привязан к этой активности и находится в том же состоянии, что и раньше. Теперь один из способов, который я могу придумать, - это как-то использовать фрагмент, прикрепленный к первому действию, а не к этому второму действию, но это приведет к тому, что многое изменится. Я хотел знать, если это способ сделать это с действиями. Благодаря !!

ответ

0

Я хочу, чтобы диалог показывался так, как будто он был прикреплен к этой активности и находится в том же состоянии, что и раньше. Теперь один из способов, который я могу придумать, - это как-то использовать фрагмент, прикрепленный к первому действию, а не к этому второму действию, но это приведет к тому, что многое изменится.

Так что просто сохраните состояние, например, в DB, ​​SharedPreferences и т. Д. Не требуется никаких обманов.

Смежные вопросы