Что такое View Binding

«Что такое View Binding» — вопрос из категории UI и Views, который задают на 24% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

View Binding — это способ безопасного доступа к элементам разметки без необходимости использовать findViewById. Генерирует класс для каждого XML-макета, содержащий ссылки на все View с ID.

Преимущества:

  • Null safety (привязка только к существующим View)
  • Type safety (корректные типы элементов)
  • Упрощает код, уменьшая boilerplate

Пример:

// Activity
private lateinit var binding: ActivityMainBinding

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    binding = ActivityMainBinding.inflate(layoutInflater)
    setContentView(binding.root)

    binding.textView.text = "Hello View Binding"
}

Отличие от Data Binding:

  • View Binding только для доступа к View
  • Нет поддержки выражений или наблюдаемых данных
  • Проще и быстрее в компиляции