Есть ли способ определить, изменяется ли видимость вида, когда фрагмент, к которому он принадлежит, отображается/скрыт?Обнаруживать видимость видимости в скрытом фрагменте
Фрагмент имеет способ onHiddenChanged()
для уведомления об изменениях видимости.
Однако у пользователя есть только обратные вызовы для уведомления, когда он прикреплен или отсоединен от окна. Есть ли способ обнаружения изменения видимости внутри вида (не путем вызова метода открытого представления через фрагмент)?
Те методы, которые я уже испытанные:
onAttachedToWindow()
: не призвали фрагментshow()
/hide()
onDetachedFromWindow()
: не призвали фрагментshow()
/hide()
getGlobalVisibilityRect()
: возвращают истинные (видимые) независимо от того, показан ли фрагмент/скрыт
Важно: Вид автономный. Он не должен ссылаться на фрагмент и наоборот, фрагмент не должен вызывать какой-либо метод в представлении.
В качестве альтернативы, существует ли способ отделить иерархию представлений фрагмента от окна без разрушения его представлений?
1 .: Я разверну свой вопрос, чтобы уточнить проблему с фрагментом/обзором 2 .: detach() не работает, поскольку, поскольку я заявил, что иерархия представления не должна быть уничтожена. – McFarlane
@McFarlane Я думал, вы сказали, что не хотите, чтобы фрагмент был уничтожен. – yrazlik
Вы правы, вопрос может быть истолкован по-разному. Я обновил его для уточнения. – McFarlane