2014-11-17 5 views
0

У меня есть 3 фрагмента, а именно frag1, frag2, frag3.Backstack not the result want

Первый фрагмент имеет две кнопки. Первая кнопка щелкает местами frag2 на экране, а щелчок на второй кнопке помещает frag3 на экран.

Работа потока первой кнопки необходимо выполнить следующие действия

frag1 -> frag2

frag2 -> frag3

Когда кнопка назад нажата: frag3 -> frag1

Работа потока вторая кнопка должна соответствовать

frag1-> frag3

При нажатии кнопки «назад»: frag3 -> frag1

Рабочий поток прекрасен, но когда я выполняю операцию первой кнопки (например, frag1-> frag2-> frag3-> frag1), а затем вторую операцию кнопки, фрагмент frag1 заменяется на frag3, но когда я нажимаю кнопку «Назад», я все равно получаю frag3 на экране, а затем снова нажимаю кнопку «Назад», приложение закрывается.

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

ответ

0

Возможное решение для вашей проблемы

  • В вас файл макета на данный вид деятельности сделать FrameLayout и положить fragment1 с видимостью = видимым.
  • Если фрагмент 2/3 должен быть показан, просто измените видимость фрагмента1 на отсутствие и добавьте фрагмент 2/3 в рамку и измените видимость фрагмента1 на
  • Когда вы находитесь в frag2/3 и вам нужно перейти на frag3/2 удалить 2/3 и добавить 3/2
  • Когда вы находитесь в frag2/3 и хотите вернуться к 1 Снимите frag2/3 и показать frag1
Смежные вопросы