В чем разница между статусом видимости invisible
и gone
для него?
android
android-xml
xml-attribute
обкрадывать
источник
источник
Ответы:
INVISIBLE:
УШЕЛ:
источник
display:none
&visibility:hidden
в HTML / CSS :-)Из документации можно сказать, что
Давайте проясним идею с некоторыми картинками.
Предположим, что у вас есть три кнопки, как показано ниже
Теперь, если вы установите видимость Button Two как invisible (
View.INVISIBLE
), тогда вывод будетИ когда вы установите видимость Button Two как пошел (
View.GONE
), то вывод будетНадеюсь, это очистит ваши сомнения.
источник
Для ListView или GridView есть другое отличие, когда видимость изначально установлена на
INVISIBLE:
УШЕЛ:
источник
НЕВИДИМ:
представление должно быть нарисовано, и это требует времени.
Ушли:
представление не должно быть нарисовано.
источник
Я хотел бы добавить к правильным и успешным ответам, что если вы инициализируете представление с видимостью as
View.GONE
, представление могло быть не инициализировано, и вы получите некоторые случайные ошибки.Например, если вы инициализируете макет как,
View.GONE
а затем пытаетесь запустить анимацию, из моего опыта моя анимация работает случайным образом. Иногда да, иногда нет.Таким образом, перед обработкой (изменением размера, перемещением и т. Д.) Представления вы должны инициировать его как
View.VISIBLE
илиView.INVISIBLE
отрисовать (нарисовать) на экране, а затем обработать его.источник
GONE
когда вы делаете это Унесенным каждый раз при компиляции программы, компонент инициализируется, что означает, что вы удаляете компонент из макета, а когда вы делаете его невидимым, компонент занимает то же место в макете, но каждый раз, когда вам не нужно его инициализировать ,
если вы установите Visibility = Gone, то вы должны инициализировать компонент .. как
например, кнопка _mButton = новая кнопка (это);
_mButton = (кнопка) findViewByid (R.id.mButton);
так что это займет больше времени по сравнению с Visibility = invisible.
источник
View.INVISIBLE -> View невидим, но он будет занимать некоторое место в макете
View.GONE -> Вид не виден и не будет занимать места в макете
источник
View.GONE = Представление не будет отображаться, а остальные представления не будут учитывать его существование.
View.INVISIBLE = Представление не будет отображаться, но оно займет назначенное ему пространство в макете
источник