Урок 23. Activity Lifecycle. В каких состояниях может быть Activity

Обсуждение уроков
Аватара пользователя
damager82
Администратор
Сообщения: 1383
Зарегистрирован: 07 янв 2012, 11:32
Контактная информация:

Урок 23. Activity Lifecycle. В каких состояниях может быть Activity

Сообщение damager82 » 10 окт 2011, 03:00

В этом уроке:

- Activity LifeCycle – поведение Activity при создании, вызове, закрытии

Click here to read this article!
Последний раз редактировалось damager82 29 апр 2017, 18:49, всего редактировалось 6 раз.
Добро пожаловать на форум сайта StartAndroid
ИзображениеИзображение

Аватара пользователя
Mikhail_dev
Сообщения: 2386
Зарегистрирован: 09 янв 2012, 14:45
Откуда: Самара

Re: Урок 23. Activity Lifecycle. В каких состояниях может бы

Сообщение Mikhail_dev » 12 янв 2012, 14:39

хелп почитал. думаю все же стоит одну вещь добавить в урок
Note: Your implementation of these lifecycle methods must always call the superclass implementation before doing any work, as shown in the examples above.
Я так понимаю нам надо вызывать суперкласс обязательно перед всем остальным кодом.

Аватара пользователя
damager82
Администратор
Сообщения: 1383
Зарегистрирован: 07 янв 2012, 11:32
Контактная информация:

Re: Урок 23. Activity Lifecycle. В каких состояниях может бы

Сообщение damager82 » 12 янв 2012, 14:51

no-- писал(а):хелп почитал. думаю все же стоит одну вещь добавить в урок
Note: Your implementation of these lifecycle methods must always call the superclass implementation before doing any work, as shown in the examples above.
Я так понимаю нам надо вызывать суперкласс обязательно перед всем остальным кодом.
Да, имеет смысл это явно проговорить в уроке.
Спасибо, добавлю :)
Добро пожаловать на форум сайта StartAndroid
ИзображениеИзображение

smival
Сообщения: 2
Зарегистрирован: 12 май 2012, 09:45

Re: Урок 23. Activity Lifecycle. В каких состояниях может бы

Сообщение smival » 12 май 2012, 15:40

ни разу не получилось сменить ориентацию через ctrl+f12 под 2.3.3.
зато хорошо работают numpad7 и numpad9 при выключенном Nim Lock


dlnsk
Сообщения: 9
Зарегистрирован: 13 авг 2012, 14:16

Re: Урок 23. Activity Lifecycle. В каких состояниях может бы

Сообщение dlnsk » 13 авг 2012, 14:44

no-- писал(а):хелп почитал. думаю все же стоит одну вещь добавить в урок
Note: Your implementation of these lifecycle methods must always call the superclass implementation before doing any work, as shown in the examples above.
Я так понимаю нам надо вызывать суперкласс обязательно перед всем остальным кодом.
Очень странно видеть именно такую надпись на оф сайте... :? ибо здравый смысл и опыт программирования используя ООП подсказывает, что создавая объект (ака в конструкторе класса) нужно действительно сначала вызвать конструктор предка (суперкласса), а вот при уничтожении объекта (т.е. в деструкторе класса) нужно сначала выполнить свои действия (убрать за собой) и уже потом передать объект на уничтожение деструктору предка...

v.yankauskas
Сообщения: 1
Зарегистрирован: 14 июн 2012, 18:40

Re: Урок 23. Activity Lifecycle. В каких состояниях может бы

Сообщение v.yankauskas » 04 сен 2012, 11:27

Очень странно видеть именно такую надпись на оф сайте... :? ибо здравый смысл и опыт программирования используя ООП подсказывает, что создавая объект (ака в конструкторе класса) нужно действительно сначала вызвать конструктор предка (суперкласса), а вот при уничтожении объекта (т.е. в деструкторе класса) нужно сначала выполнить свои действия (убрать за собой) и уже потом передать объект на уничтожение деструктору предка...
Погодите-погодите. Одно дело конструктор, тут обязательно нужно вызывать конструктор супер-класса, чтобы проинциализировать наследованные поля.

Однако в случае методов Activity речь не идет о конструкторе. Это в определенном смысле колл-беки. И использование метода предка не всегда очевидно.

Аватара пользователя
Vici
Сообщения: 12
Зарегистрирован: 06 ноя 2012, 00:29

Re: Урок 23. Activity Lifecycle. В каких состояниях может бы

Сообщение Vici » 27 янв 2013, 20:39

Здравствуйте. Возможно, вопрос звучит глупо: в эмуляторе Android 4.1 записи добавляются в лог как-то по-другому? Дело в том, что созданный фильтр "States" теперь ничего не фильтрует. (В закладке лога без фильтров на вызываемых методах теперь стоит тэг "ARMAssebler").

vizort
Сообщения: 49
Зарегистрирован: 02 мар 2013, 22:43

Re: Урок 23. Activity Lifecycle. В каких состояниях может бы

Сообщение vizort » 02 апр 2013, 18:34

В чем может быть проблема что логи не отображаються?

pilat
Сообщения: 1
Зарегистрирован: 03 май 2013, 16:19

Re: Урок 23. Activity Lifecycle. В каких состояниях может бы

Сообщение pilat » 03 май 2013, 16:28

Провел такой эксперимент: нажал и удерживал в эмуляторе кнопку <Home> -- в рез-те, появился полупрозрачный оверлей со списком задач.

Ожидаемое поведение: MainActivity переходит в состояние "Paused" (частично видно, но не в фокусе).

Наблюдаемое поведение: никаких новых записей в логе не появляется (ни при вызове списка процессов, ни при выходе из него.

Можмно приоткрыть тему взаимодействия с системными процессами и/или интентами других прилоений[*1]?

[*1] : например, когда в твиттере нажимаешь <Share :: Springpad>, то появляется некое всплывающее окошко (занимает только часть экрана) с параметрами "шаринга".

Rix
Сообщения: 10
Зарегистрирован: 12 авг 2013, 09:06

Re: Урок 23. Activity Lifecycle. В каких состояниях может бы

Сообщение Rix » 14 авг 2013, 14:51

Привет всем!
как можно реализовать следующую "фишку":
допустим есть 2 активити
Активити 1: Авторизация - (2 поля логин и пароль)
Активити 2: После успешной авторизации (тут уже не важно что есть, может быть что угодно)

Запустил приложение, авторизовался открылось 2е Активити, нажимаю назад открывается Активити 1, как сделать чтобы оно не открывалось а выдало запрос о закрытие приложения?

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 23. Activity Lifecycle. В каких состояниях может бы

Сообщение rezak90 » 14 авг 2013, 16:32

Rix писал(а):как можно реализовать следующую "фишку"
проходить уроки постепенно
R.id.team
Политика на форуме запрещена

BlackSoul
Сообщения: 2
Зарегистрирован: 02 окт 2013, 13:12

Re: Урок 23. Activity Lifecycle. В каких состояниях может бы

Сообщение BlackSoul » 02 окт 2013, 13:18

Доброго времени суток.
возникла такая проблема:
Если при работающей Activity выключить экран( по кнопке Power ), происходят крайне непонятные действия.
onCreate
onStart
onResume
-- приложение запустилось. нажимаем Power --
onPause
onStop
onDestroy
-- небольшая пауза --
onCreate
onStart
onResume
onPause

Никак не могу понять, откуда взялись последние 4 строки.
android 4.1.2

Аватара пользователя
anber
Сообщения: 584
Зарегистрирован: 10 июн 2013, 15:05
Откуда: UA

Re: Урок 23. Activity Lifecycle. В каких состояниях может бы

Сообщение anber » 02 окт 2013, 13:42

Ты когда Power нажимал, случайно девайс не повернул? Если повернул то сменилась ориентация и Activity пересоздалась.
Личные сообщения с просьбой ответить на форуме или написать программу я просто удаляю, если я в хорошем настроении. Если в плохом добавляю автора в черный список. По любым другим вопросам feel free to write to me.

BlackSoul
Сообщения: 2
Зарегистрирован: 02 окт 2013, 13:12

Re: Урок 23. Activity Lifecycle. В каких состояниях может бы

Сообщение BlackSoul » 02 окт 2013, 14:12

anber писал(а):Ты когда Power нажимал, случайно девайс не повернул? Если повернул то сменилась ориентация и Activity пересоздалась.
нет. не переворачивал. Но идея оказалась верной(!).
Всё дело в том, что у приложения был захардкоден режим landscape. при выключении питания активити автоматически переворачивалась(!)
Спасибо.

з.ы. имхо, стоит это прописать в тексте урока.

itAp34
Сообщения: 8
Зарегистрирован: 09 окт 2013, 22:05

Re: Урок 23. Activity Lifecycle. В каких состояниях может бы

Сообщение itAp34 » 12 окт 2013, 20:56

Доброго вечера.
Есть непонятка - делаем все как в уроке,.. F11 - в логе 3 записи о создании активити, очищаем лог, поворачиваем экран, в логе 6 записей - 3 о смерти первой активити и 3 о рождении новой - отлично! Очищаем лог (!), поворачиваем снова... И видим 12 записей - 3 на смерть, 3 на рождение, и еще дублем 3 на смерть, 3 на рождение... Собственно вопрос - почему возвращение из land-ориентации в обычную вызывает удвоенное количество действий?

BlackSSA
Сообщения: 1
Зарегистрирован: 19 окт 2013, 15:50

Re: Урок 23. Activity Lifecycle. В каких состояниях может бы

Сообщение BlackSSA » 19 окт 2013, 16:03

Доброго времени суток! Я немного усложнил пример и добавил элемент EditText. После запуска в AVD ввел в него "бла-бла-бла". Если Activity при повороте экрана уничтожается и создается заново, то ожидал увидеть пустое поле ввода, но оно каким-то чудом сохраняет текст! Тогда мне непонятно, что делает onDestroy? И зачем тогда надо "...выполняются процедуры сохранения и восстановления данных, чтобы не потерялись данные..."?

Аватара пользователя
trew
Сообщения: 450
Зарегистрирован: 28 сен 2013, 17:34

Re: Урок 23. Activity Lifecycle. В каких состояниях может бы

Сообщение trew » 19 окт 2013, 16:13

BlackSSA писал(а):Доброго времени суток! Я немного усложнил пример и добавил элемент EditText. После запуска в AVD ввел в него "бла-бла-бла". Если Activity при повороте экрана уничтожается и создается заново, то ожидал увидеть пустое поле ввода, но оно каким-то чудом сохраняет текст! Тогда мне непонятно, что делает onDestroy? И зачем тогда надо "...выполняются процедуры сохранения и восстановления данных, чтобы не потерялись данные..."?
Посмотрите в xml файл, там у EditText
android:id="@+id/editText1"
поэтому сохраняется его значение. А если id не будет задано, сохраняться при развороте не будет.

"выполняются процедуры сохранения и восстановления данных" - это нужно для переменных которые мы придумываемым в коде.
Иначе, при развороте - наши переменные (или объекты) пересоздаются т.е. значения теряются.
Когда выкладываете код на форум - код оформляйте. Редактор - поищите слова Geshi Syntax -Java. (или xml)
Свои сообщения можно редактировать - кнопка edit.

lakomet
Сообщения: 3
Зарегистрирован: 22 окт 2013, 10:19

Re: Урок 23. Activity Lifecycle. В каких состояниях может бы

Сообщение lakomet » 01 ноя 2013, 12:02

Урок 22 и урок 23, у меня у одного отображается без стилей оформления сайта?

Аватара пользователя
trew
Сообщения: 450
Зарегистрирован: 28 сен 2013, 17:34

Re: Урок 23. Activity Lifecycle. В каких состояниях может бы

Сообщение trew » 01 ноя 2013, 12:10

lakomet писал(а):Урок 22 и урок 23, у меня у одного отображается без стилей оформления сайта?
так?
viewtopic.php?f=12&t=2701
Когда выкладываете код на форум - код оформляйте. Редактор - поищите слова Geshi Syntax -Java. (или xml)
Свои сообщения можно редактировать - кнопка edit.

Ответить