Ответ 1
Вы можете попробовать это
if (myView.getVisibility() == View.VISIBLE) {
// Its visible
} else {
// Either gone or invisible
}
Надеюсь, что это поможет.
Мои исследования привели меня в тупик.
Существует активность, которая, очевидно, имеет в ней представления.
Существует несколько способов проверить, является ли вид видимым для пользователя в контексте - это просмотр на экране или он не соответствует границам экрана.
Но вот еще одна ситуация: существует относительный макет, и один вид намеренно перекрывает другой, или появляется всплывающее окно в действии.
Методы, которые используются для проверки видимости вида или отсутствия (включая getLocationOnScreen, getLocalVisibleRect, getHitRect, getDrawingRect), возвращающие значения, как будто вид виден на экране, несмотря на то, что он перекрывается с другим, поэтому я не могу проверить, является ли вид видимым для пользователя.
Нужно ли это проверить?
Вы можете попробовать это
if (myView.getVisibility() == View.VISIBLE) {
// Its visible
} else {
// Either gone or invisible
}
Надеюсь, что это поможет.
Вы можете использовать метод view.isShown()
, этот метод возвращает вид видимого состояния - это результат видимости истинного вида.