Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
353 of 502 menu
◀ ▶

Метод setVisibility

Метод setVisibility класса View принимает View.VISIBLE, View.INVISIBLE или View.GONE. При GONE элемент не рисуется и не занимает место в layout. При INVISIBLE место остаётся, но содержимое не видно. Тот же эффект даёт атрибут android:visibility в XML.

Синтаксис

view.setVisibility(View.GONE)

Параметры

Параметр Описание
visibility Константа VISIBLE, INVISIBLE или GONE.

Пример

Давайте спрячем подпись по нажатию на кнопку:

import android.os.Bundle import android.view.View import android.widget.Button import android.widget.TextView import androidx.appcompat.app.AppCompatActivity class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val label = findViewById<TextView>(R.id.label) val action = findViewById<Button>(R.id.action) action.setOnClickListener { label.visibility = View.GONE } } }

На экране после нажатия текст "abcde" исчезнет и освободит место в layout.

Пример

Давайте снова покажем элемент через VISIBLE:

import android.os.Bundle import android.view.View import android.widget.TextView import androidx.appcompat.app.AppCompatActivity class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val label = findViewById<TextView>(R.id.label) label.visibility = View.GONE label.postDelayed({ label.visibility = View.VISIBLE }, 1500) } }

На экране подпись сначала пропадёт, через полторы секунды снова появится.

Смотрите также

  • класс View,
    у которого меняют visibility
  • метод setEnabled,
    который отключает элемент, но оставляет его видимым
  • метод findViewById,
    которым получают View перед setVisibility
  • класс LinearLayout,
    где соседи сдвигаются после GONE
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить