@DarkByte2015

Как менять фрагменты?

На форме лежит BottomNavigationView. Хочу чтобы по нажатию одной кнопки появлялся один фрагмент, по нажатию другой - другой. Как это сделать? Про фрагменты читал. Просто добавлять их уже умею. Но не понимаю именно как их смену организовать.

upd. Нашел такой способ:

supportFragmentManager.beginTransaction().replace(R.id.content, MyFragment()).commit()


Но проблема в том что начинает перекрываться текст. Т.е. я положил например на каждый фрагмент по TextView с названием фрагмента. Вначале (при открытии приложения) на главном лайауте лежит первый фрагмент, я нажимаю кнопку и он меняется на второй фрагмент, но содержимое первого судя по всему остается видно! Он не заменяется, а как-бы добавляется. И из-за этого начинает перекрываться текст. Вот так это выглядит:

dz12wT3L.png

Не знаю что делать :(
  • Вопрос задан
  • 170 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Andrew_21
В файле разметки фрагмента для главного контейнера добавьте
<android.support.constraint.ConstraintLayout // ваш контейнер
...
android:background="@color/white"
android:clickable="true"
android:focusable="true" />


Еще есть методы
supportFragmentManager.beginTransaction().hide(R.id.content, MyFragment()).commit()
supportFragmentManager.beginTransaction().show(R.id.content, MyFragment()).commit()
может для вашей задачи лучше подойдут
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы