|
|
@@ -482,6 +482,26 @@ if (btn_one != null) {
|
|
|
|
|
|
Правила форматирования строк можно посмотреть [тут](https://docs.oracle.com/javase/8/docs/api/java/util/Formatter.html#summary)
|
|
|
|
|
|
+1. Отложенная инициализация указателей на визуальные объекты
|
|
|
+
|
|
|
+ Если необходимо объявить глобальный (на уровне класса) указатель на визуальный объект (TextView, Button и т.п.), то задать ему значение мы в момент объявления не можем, т.к. оно становится доступным только после вызова метода *setContentView*. В таком случае мы добавляем в объявление ключевое слово **lateinit** (инициализация позже) и присваиваем значение в конструкторе окна:
|
|
|
+
|
|
|
+ ```kt
|
|
|
+ // объявляем свойство класса с ОТЛОЖЕННОЙ инициализацией
|
|
|
+ private lateinit var someTextView: TextView
|
|
|
+
|
|
|
+ override fun onCreate(savedInstanceState: Bundle?) {
|
|
|
+ // вызов конструктора базового класса
|
|
|
+ super.onCreate(savedInstanceState)
|
|
|
+
|
|
|
+ // привязка контента (файла разметки)
|
|
|
+ setContentView(R.layout.activity_main)
|
|
|
+
|
|
|
+ // свой код можно вставлять отсюда
|
|
|
+ someTextView = findViewById(R.id.some_text_view)
|
|
|
+ }
|
|
|
+```
|
|
|
+
|
|
|
Предыдущая лекция | | Следующая лекция
|
|
|
:----------------:|:----------:|:----------------:
|
|
|
[Первый проект в Android Studio](./android_studio.md) | [Содержание](../readme.md#практика-разработка-мобильных-приложений) | [Смена ориентации, жизненный цикл activity, сохранение данных](./layout_orientation.md)
|