AsyncTask в onItemClick () и изменение конфигурации - PullRequest
0 голосов
/ 12 декабря 2011

Я загружаю список некоторых данных. Я делаю это в AsyncTask и также использую lastNonConfigurationInstance, поэтому при изменении конфигурации устройства список снова не загружается. Здесь все ясно. НО, когда я нажимаю на элемент, загружаются «расширенные» данные этого элемента. И здесь я не уверен, что делать ... Должен ли я использовать другой AsyncTask для загрузки данных элемента или просто сделать это непосредственно в onItemClick ()? Если я помещу это в AsyncTask, я должен также помнить об изменении конфигурации, и в этом случае я должен также использовать lastNonConfigurationInstance? Заранее спасибо за все ваши предложения, ответы ...

1 Ответ

1 голос
/ 12 декабря 2011

Если вы «расширили» данные, для извлечения которых потребовалось более 20 мс, вам следует рассмотреть возможность использования AsyncTask для этого.

Если ваши данные быстро загружаются, вам не нужно lastNonConfigurationInstance. Похоже, вы можете просто сохранить «текущий индекс» элемента, на который пользователь нажал в onSaveInstanceData. Когда ваша деятельность воссоздается в onCreate(Bundle), прочитайте выбранный индекс из пакета и загрузите данные для подпункта.

Если ваши расширенные данные требуют времени, вы можете использовать механизм lastNonConfigurationInstance для сохранения данных для выбранного в данный момент элемента.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...