Я использую эти функции в классе деятельности: onSaveInstanceState onRestoreInstanceState OnPause OnCreateAndroid: жизненный цикл, не onRestoreInstanceState вызывается, когда телефон повернулся
Когда пользователь запускает активность OnCreate вызывается, когда заканчивается пользователь, OnPause вызывается. До сих пор это прекрасно.
Но когда пользователь поворачивает телефон, OnPause onSaveInstanceState OnCreate вызывается. Я бы ожидал onRestoreInstanceState до onCreate. Почему это так и как я должен обрабатывать инициализацию ui-данных, если не существует?
документация говорит: «Этот метод вызывается после onStart(), когда активность повторно инициализируется из ранее сохраненного состояния, указанного здесь в файле savedInstanceState». Thats strge, потому что, когда я включаю телефон, вызывается вызовSaveInstanceState, но не этот метод. Мне нужен этот метод, потому что я хочу выделить между обычным стартом (новый init ui) и прерыванием, как поворот телефона (ui должен выглядеть так же, как и раньше) – user1324936
@ user1324936: Правильно. Если ранее не было сохраненного состояния (т. Е. 'Bundle' передано' onCreate() 'is' null'), то 'onRestoreInstanceState()' не вызывается. – CommonsWare
, когда телефон включен. Создание получает Bundle! = Null, если начато с scrach, Bundle имеет значение NULL. Как-то странно, что onRestoreInstanceState() никогда не называется – user1324936