2013-07-05 2 views
0

У меня есть активность, и когда он загружается с первого раза, он делает некоторые вещи OnCreate, которые мне также нужно запускать при OnResume, проблема в том, что в первый раз это происходит активность, которая проходит через OnCreate и OnResume, если я перехожу к другому действию, а затем использую обратную стрелку, чтобы вернуться к активности, она вызывает только OnResume, что прекрасно, если только она проходит через нее, когда действие выполняется для в первый раз, заставляя его дважды повторять одно и то же. Как я могу избежать активности, не вызывающей OnResume() в первый раз, если это вообще возможно?Почему OnResume вызывается при первом запуске активности

ответ

7

Как я могу избежать активности не вызывая OnResume() в первый раз, если это вообще возможно?

Невозможно. Это специально спроектировано таким образом, чтобы вы не делали делать что-то дважды.

, когда он загружает первый раз, когда он делает некоторые вещи OnCreate, что я также необходимые для запуска, когда OnResume

Move все этого «материала» в onResume(). Таким образом, работа выполняется независимо от того, происходит ли действие сначала на экране или возвращается на экран.

Возможно, вы захотите провести некоторое время, просмотрев the activity lifecycle.

+0

Отлично, новичок в android и оцените подробную информацию. спасибо – jedgard

0

Вот как андроид activity lifecycle works.

Один из способов избежать этой проблемы есть, просто перенести логику onResume()

0

Это связано с природой жизненного цикла Android-активности. Пожалуйста, прочитайте Pausing and Resuming an Activity для получения дополнительной информации.

Cheers!

Смежные вопросы