Возможно ли показать FragmentDialog
, когда вкладка выбрана в ActionBar
?Отображение DialogFragment из ActionBar.TabListener
Метод onTabSelected()
происходит внутри транзакции, которая совершается после завершения выполнения метода. Однако метод show()
в DialogFragment
также происходит в транзакции автоматически, поэтому, если вы попытаетесь показать диалог при выборе вкладки, вы получите RuntimeException
, потому что транзакция совершается дважды.
Любые подсказки будут оценены.
Идея состоит в том, чтобы показать какое-то подменю в верхней части области содержимого (чуть ниже панели действий), когда выбрана вкладка. Это подменю содержит параметры фильтрации, которые будут заменять область содержимого фактическим содержимым при выборе. – mgv
@mgv: :: shrug :: Все еще звучит странно для меня. Подменю кажется прекрасным; с использованием переходного элемента пользовательского интерфейса, такого как диалог, нет. Пользователь отбирает вкладку, выбирает элемент из подменю и ... теперь не может выбрать что-либо еще из подменю, потому что он ушел. Почему бы не использовать навигацию «список» вместо вкладок и отобразить строки в «Spinner», чтобы предложить вашу иерархию меню? – CommonsWare
Это правда, это звучит довольно странно. Меня попросили сделать это таким образом, но я думаю, что буду бороться за свое право на вечеринку и следовать вашим советам. P.S: Игнорирование FragmentTransaction сработало, поэтому ваш ответ был прав. – mgv