2016-12-13 2 views
0

Несколько нажатий на нижней панели навигации не бывает, как и ожидалосьНавигация вопросы в осколке backstack

нижняя полоса имеет 5 вкладок

каждый выбор закладки выскакивает тег и толкает тегу

кран Фрагмент A -> нажмите на фрагмент B, повторите то же самое два-пять раз.

например:

ТКП -> Извлекает из стека -> нажать на стек Нажмите B -> поп-B из стека -> толчок B стек

Поведение: по умолчанию Фрагмент загружен, при нажатии B на B, затем нажмите на A, чтобы перейти к A, здесь, когда обратное нажатие приложения закрыто.

ожидается: результат должен быть что-то вроде этого по умолчанию фрагмент загружается на отводе B Переход к B, а затем нажмите на А переходит в А, вот когда назад нажата она должна идти к B и backpress Гото A затем нажмите кнопку закрыть приложение.

case FragmentA: 
    fragmenta = new FragmentA(); 

    getSupportFragmentManager().popBackStack(FragmentReferenceTags.FragmentA, FragmentManager.POP_BACK_STACK_INCLUSIVE); // returns False - can't find the tag! 

    transaction.add(R.id.fragment_container_layout, fragmenta, FragmentReferenceTags.FragmentA); 
    transaction.addToBackStack(FragmentReferenceTags.FragmentA); 

    transaction.commit(); 
    hideSubTabs(); 
    break; 

case FragmentB: 
    fragmentb = new FragmentB(); 

    getSupportFragmentManager().popBackStack(FragmentReferenceTags.FragmentB, FragmentManager.POP_BACK_STACK_INCLUSIVE); // returns False - can't find the tag! 

    transaction.add(R.id.fragment_container_layout, fragmentb, FragmentReferenceTags.FragmentB); 
    transaction.addToBackStack(FragmentReferenceTags.FragmentB); 

    transaction.commit(); 
    hideSubTabs(); 
    break; 
+0

Пожалуйста, перейдите немного SO и Google. есть тысячи таких вопросов. Я говорю вам это, потому что я уже нашел 5-10 копий этого вопроса за последние 1-2 месяца. –

+0

Благодарим вас за то, что вы делали Misley, я потратил достаточно времени на исследование в этой точке, где я не мог получить какое-либо полезное решение. если вы можете вставить мне URL-адрес, указав то же самое, я смогу пройти через него один раз и найти решение. – user1242359

+0

получил вопрос: ваши фрагменты A, B, ... являются вкладками вашего bottomTabBar или все на одной вкладке? –

ответ

0

Использование replace вместо add:

transaction.replace(R.id.fragment_container_layout, fragmentb, FragmentReferenceTags.FragmentB); 
transaction.addToBackStack(null); 
+0

спасибо за ответ .. Не повезло с заменой, тоже попробовал уже и даже сейчас .. это то же самое поведение .. я не могу передать значение null для backstack, потому что я использую эти теги для выбора нижней панели навигации на заднем пульте – user1242359

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