Я знаю, что saveInstanceState()
используется для хранения переменных активности, текста в EditText и т. Д.Когда использовать метод saveInstanceState()?
Но у меня есть сомнения, что я должен сохранить состояние зрения?
Позвольте мне дать вам сценарий. У моего представления есть 3 кнопки. При щелчке по одному из них WebView отображается пользователю (в том же действии). Теперь, если приложение будет убито, я должен сохранить состояние, в котором пользователь отображал WebView, когда приложение было убито, а когда активность воссоздана, отобразите WebView вместо кнопок?
Другой сценарий: у меня есть 3 вкладки. При выборе каждой вкладки отображается другое представление. Как объяснено в предыдущем случае, нужно снова сохранить этот пользователь, который последний раз выбрал эту вкладку?
Лучше всего, если вы сможете объяснить случаи, когда я должен и не должен сохранять состояние активности.
Мое приложение не нуждается в поддержке изменений ориентации. Он поддерживает только портрет. – Geek
Я не знаю даже, следует ли использовать этот метод. Потому что, если приложение положить в фоновом режиме, нажав кнопку домой и открыть приложение снова, он показывает мне последнее состояние. Тогда зачем мне вручную сохранять и восстанавливать? – Geek
Если вы разместите свое приложение в фоновом режиме, нажав кнопку «домой», он не обязательно будет полностью убит (просто приостановлен). Если вы разместите свое приложение в фоновом режиме, а затем откройте достаточно других приложений, которые ваш телефон должен убить ваше приложение, чтобы восстановить память, а затем снова открыть приложение, вы потеряете свое состояние. Как пользователь, вы не сделали ничего по-другому между этими двумя сценариями, но разные вещи идут за кулисами, и ваше приложение должно поддерживать оба. – Michelle