Метод Fragment.setUserVisibleHint()
, вызываемый Системой, или
мы называем это вручную?
Является ли Fragment.setUserVisibleHint(), вызываемым системой Android?
Ответ 1
Обратите внимание, что FragmentPagerAdapter использует это и правильно вызывает setUserVisibleHint()
на своих фрагментах, поэтому я думаю, вы см. некоторых людей, консультирующих, например, переопределить setUserVisibleHint()
, чтобы узнать, когда фрагмент становится видимым для пользователя или нет (и это, таким образом, будет работать только тогда, когда фрагмент находится внутри FragmentPagerAdapter
, а не только при простом расположении обычного макета активности).
Итак, чтобы четко ответить на вопрос: вы вызываете его вручную, а FragmentPagerAdapter
также вызывает его вручную.
Ответ 2
Из документации:
Настройте подсказку системе о том, является ли этот пользовательский интерфейс фрагмента видимым для пользователя. Эта подсказка по умолчанию имеет значение true и сохраняется в состоянии сохранения и восстановления экземпляра экземпляра экземпляра.
Приложение может установить это значение в false, чтобы указать, что пользовательский интерфейс фрагмента прокручивается вне видимости или в противном случае не отображается непосредственно пользователю. Это может использоваться системой для приоритизации операций, таких как обновление жизненного цикла фрагмента или поведение порядка загрузки.
Параметры isVisibleToUser true, если этот фрагмент UI в настоящее время отображается пользователю (по умолчанию), false, если это не так.
Похоже, что он по умолчанию имеет значение True, и вы можете установить его на False, если хотите.
Ответ 3
Не для Android меньше, чем версия 15 и Android Support Library меньше, чем версия 11.