Режим совместимости и жизненный цикл активности - PullRequest
0 голосов
/ 21 декабря 2011

Вот некоторые предварительные условия:

  • приложение предназначено для смартфонов (маленькие, средние, большие экраны)
  • приложение должно выглядеть так же на планшетах (xlargeэкраны)
  • приложение должно давать пользователям возможность переключаться между режимами «Растянуть на весь экран» и «Увеличить на весь экран» при запуске на планшетном ПК.

Дело в том, что когда пользователь переключается между этими режимами, текущая активность перезапускается =>, проходит полный жизненный цикл, и я этого не хочу:)

Я знаю, что в случае, т. Е.вращая устройство (переходя из альбомного режима в портретный или наоборот), мы можем использовать параметр android: configChange в манифесте, чтобы предотвратить перезапуск действия.Но ни один из возможных вариантов не работает в случае режимов совместимости.

Любые подсказки, идеи, чтобы НЕ перезапускать активность при переключении между увеличением / растяжением, были бы хорошими:)

1 Ответ

0 голосов
/ 21 декабря 2011

Я знаю, что этот ответ не соответствует вашей первоначальной проблеме. Но почему вы не хотите возобновить действие? Создание нового действия необходимо для загрузки (может быть, новых) ресурсов, настройки ширины / высоты и т. Д. Вы можете сохранить данные, которые необходимо сохранить, и сохранить их при создании вашего действия. Некоторые способы сохранения данных перечислены по этой ссылке: http://developer.android.com/guide/topics/data/data-storage.html

Может быть, это вариант, чтобы посмотреть на фрагменты. Если вы поместите фрагмент внутри действия, вы можете перезапустить его (удалить / добавить) вместо действия. Таким образом, вы не будете иметь дело с жизненным циклом деятельности.

...