Создание внутренних фрагментов в onCreateView другого фрагментаAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Создание внутренних фрагментов в onCreateView другого фрагмента

Сообщение Anonymous »

У меня есть фрагмент, содержащий таблицу (прокручиваемый список). Каждая строка этой таблицы тоже является фрагментом (подфрагментом). Все эти подфрагменты создаются в методе onCreateView корневого фрагмента, и эти подфрагменты не имеют конструкторов по умолчанию (без аргументов). Я предположил, что им не нужны конструкторы по умолчанию, потому что макетов с этими подфрагментами нет, и Android должен сначала вызвать метод onCreatView, и все они будут воссозданы. Но оказалось, что иногда Android пытается вызвать для них конструкторы по умолчанию.
Я могу создать для них конструкторы по умолчанию и предоставить им базовые глобальные структуры данных. Но если Android создает все эти подфрагменты самостоятельно, а затем вызывает onCreateView корневого фрагмента, это может привести к появлению двух копий всех подфрагментов в списке! Итак, у меня есть несколько вопросов:
  • Плохая ли практика создавать некоторые представления или фрагменты в onCreateView, и мне разрешено только вызывать findViewById< /код> здесь? Должен ли я делать это в onCreate или в конструкторе корневого фрагмента?
  • Вызывает ли Android onCreate или onCreateView в ситуации, когда он воссоздает страницу таким образом?Спасибо за ответ!
P.S. Я решил проблему и узнал, как это работает. Если у нас есть фрагмент с некоторыми подфрагментами и мы поворачиваем экран (или, возможно, делаем что-то еще, заставляя Android воссоздать активность), последовательность обратного вызова будет такой: Конечно, этот список неполный и содержит только вызовы, в которые я поставил точки останова. Воссоздание Activity должно быть между точками 1 и 2.

Также, если вы добавляете несколько подфрагментов при запуске фрагмента (я делаю это в обратном вызове onStart), вам необходимо проверить, существует ли этот подфрагмент уже. В противном случае все ваши субфрагменты будут дублироваться после поворота экрана.

Подробнее здесь: https://stackoverflow.com/questions/791 ... r-fragment
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»