Что такое метод OnCreate в android
Я новичок в android, пытаясь понять, что делает ниже метод
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
// load the layout
setContentView(R.layout.filters);
}
Мои исследования::
- onCreate используется для запуска активности.
- super используется для вызова конструктора родительского класса
- setContentView используется для установки xml
Но что это все вместе -
-
onCreate(Bundle savedInstanceState)
.... почему этот комплект пришел
там, что это такое
- Что это за
super.onCreate(savedInstanceState);
некоторое объяснение в условиях неспециалиста было бы полезно
Ответы
Ответ 1
Если вы сохраняете состояние приложения в пакете (обычно это ненастоящие динамические данные в onSaveInstanceState), его можно вернуть обратно в onCreate, если необходимо активировать действие (например, изменение ориентации). Если ориентация изменяется (т.е. Поворачивая ваше устройство из ландшафтного режима на портретный и наоборот), активность воссоздается, и метод onCreate() вызывается снова, чтобы вы не потеряли эту предварительную информацию. Если данные не были предоставлены, savedInstanceState имеет значение null.
Для получения дополнительной информации http://developer.android.com/guide/topics/resources/runtime-changes.html
Ответ 2
Пакет используется для сохранения и восстановления информации о состоянии вашей деятельности. В таких случаях, как изменение ориентации или убийство вашего приложения или любой другой сценарий, который приводит к вызову onCreate() снова, пакет savedInstanceState может использоваться для перезагрузки предыдущей информации о состоянии.
Знакомство с этой статьей о жизненном цикле активности.
Ответ 3
onCreate(Bundle)
- это то, где вы инициализируете свою деятельность. Когда Activity
запущен и приложение не загружено, будут вызываться оба метода onCreate()
.
Но для последующих запусков Activity
приложение onCreate()
не будет вызываться.
Ответ 4
super используется для вызова конструктора родительского класса
super.onCreate(savedInstanceState);
вызывает метод onCreate()
, а не конструктор суперкласса.
Ответ 5
Поскольку метод onCreate переопределяется, ключевое слово super используется для вызова метода onCreate базового класса. думаю
Ответ 6
Сначала super.onCreate(savedInstanceState);
вызывает метод в superclass
и сохраняет InstanceState
действия, если какая-либо вещь повреждает действие, поэтому оно сохраняется в instanceState
, поэтому при перезагрузке действия оно будет прежним.