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

Метод inflate

Метод inflate у LayoutInflater принимает id ресурса R.layout.*, опционально родительский ViewGroup и флаг attachToRoot. Возвращает корневой View разметки. Для экрана активности корень передают в setContentView.

Синтаксис

val root = inflater.inflate(R.layout.activity_main, parent, false)

Параметры

Параметр Описание
resource Id layout файла, например R.layout.activity_main.
root Родитель для параметров layout или null.
attachToRoot Если true, сразу добавляет View к root. Для setContentView часто false с null root.

Пример

Давайте раздуем layout пункта списка:

<TextView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/label" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="abcde" />

Файл item_line станет одним TextView после inflate в adapter.

Пример

Давайте inflate item_line для RecyclerView:

import android.view.LayoutInflater import android.view.ViewGroup fun createRow(parent: ViewGroup): android.view.View { return LayoutInflater.from(parent.context) .inflate(R.layout.item_line, parent, false) }

Функция вернёт View строки, готовый для обёртки в ViewHolder.

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

  • метод from,
    которым получают inflater перед inflate
  • класс LayoutInflater,
    у которого вызывают inflate
  • метод onCreateViewHolder,
    типичное место вызова inflate
  • метод findViewById,
    которым ищут id после inflate
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить