Кто-нибудь знает разницу между onResume() и onRestart()?

Мне было интересно, в чем разница между обоими методами, я имел в виду, когда лучше всего использовать один вместо другого и почему?


person Mauricio Sartori    schedule 21.01.2014    source источник
comment
да.   -  person panini    schedule 21.01.2014
comment
Я иногда использую onResume и не помню, чтобы когда-либо использовал onRestart.   -  person Ted Hopp    schedule 21.01.2014


Ответы (2)


Когда вызывается OnResume?

Пользователь находится в действии 1 и теперь переходит к действию 2. (действие 1 вообще не видно). Теперь пользователь нажимает кнопку «Назад» из действия 1, вызывается метод OnResume действия 1.

Когда вызывается OnRestart?

Когда пользователь переходит от действия 1 к действию 2, как в приведенном выше случае, возвращается к действию 1, вызывается onRestart.

так в чем же разница?

Метод OnResume вызывается каждый раз, когда активность переходит из фонового состояния в активное.

Но onRestart вызывается только при вызове метода onStop.

Обратите внимание, что система также вызывает метод onStart(), который происходит каждый раз, когда ваша активность становится видимой (будь то перезапуск или создание в первый раз). Однако метод onRestart() вызывается только тогда, когда активность возобновляется из остановленного состояния.

Когда использовать метод OnRestart?

Используйте это, когда вы хотите выполнить специальную работу по восстановлению, которая может быть необходима только (если вы обработали метод onStop для высвобождения всех ресурсов, интенсивно использующих ЦП), если действие ранее было остановлено, но не уничтожено.

person Prem    schedule 21.01.2014

Метод OnResume вызывается после создания действия и отображается пользователю, поэтому он полезен, когда вы пытаетесь подключиться к своим ресурсам, которые вы отключили в методе OnPause.

во-вторых, если у вас есть 2 действия, и вы переводите во второе действие первое действие в состоянии остановки, поэтому, когда вы вернетесь к нему, вам не нужно создавать его с нуля, вам нужно только перезапустить его, поэтому Restart вызовет метод start, затем onresume method , поэтому в большинстве случаев вы имеете дело непосредственно с onresume

person mohammed momn    schedule 21.01.2014