Closed GoogleCodeExporter closed 9 years ago
Никита, поясните пожалуйста свой
коментарий в классе
UiThreadCompassView
onDetachedFromWindow don't work
Что имеется в виду?
/*
@Override
//TODO check that this method work, onDetachedFromWindow don't work
public void onWindowFocusChanged(boolean hasWindowFocus) {
super.onWindowFocusChanged(hasWindowFocus);
LogManager.d(TAG, "onWindowFocusChanged " + hasWindowFocus);
if (hasWindowFocus) {
Controller.getInstance().getCompassManager().addSubscriber(this);
} else {
Controller.getInstance().getCompassManager().removeSubscriber(this);
}
}*/
Использование onWindowFocusChanged в данном случае
вызывает баг.
Переписал на onAttach и onDetached, что именно при
этом не работает - не понял.
Original comment by Nickolay...@gmail.com
on 4 Feb 2012 at 10:20
К сожалению я тоже не помню. Кажется в
каких-то случаях он не вызывался(возможно
при нажатии home). Не помню
Original comment by Nikita.B...@gmail.com
on 4 Feb 2012 at 10:29
Ну тогда, закрываю
Original comment by Nickolay...@gmail.com
on 5 Feb 2012 at 8:24
Проверил, по-моему не работает: например
если уходим из активити favorites то subscriber'ы
остаются, а если зайти на нее снова, то
добавляются новые подписчики т.о картина
следующая (на экране одновременно
помещаются 7-8 компасов):
01-06 04:01:59.633:
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588): new
CompassManager created
01-06 04:01:59.633:
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSensorUpdates
01-06 04:01:59.633:
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSubscriber, size: 1
01-06 04:01:59.663:
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSubscriber, size: 2
01-06 04:01:59.683:
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSubscriber, size: 3
01-06 04:01:59.703:
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSubscriber, size: 4
01-06 04:01:59.723:
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSubscriber, size: 5
01-06 04:01:59.753:
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSubscriber, size: 6
01-06 04:01:59.763:
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSubscriber, size: 7
......
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSubscriber, size: 8
01-06 04:02:49.103:
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSubscriber, size: 9
01-06 04:02:49.123:
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSubscriber, size: 10
01-06 04:02:49.133:
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSubscriber, size: 11
01-06 04:02:49.143:
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSubscriber, size: 12
01-06 04:02:49.163:
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSubscriber, size: 13
01-06 04:02:49.173:
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSubscriber, size: 14
01-06 04:02:53.543:
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSubscriber, size: 15
....
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSubscriber, size: 16
01-06 04:03:08.443:
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSubscriber, size: 17
01-06 04:03:08.463:
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSubscriber, size: 18
01-06 04:03:08.473:
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSubscriber, size: 19
01-06 04:03:08.483:
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSubscriber, size: 20
01-06 04:03:08.493:
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSubscriber, size: 21
01-06 04:03:08.513:
DEBUG/su.geocaching.android.controller.managers.CompassManager(1588):
addSubscriber, size: 22
Original comment by Nikita.B...@gmail.com
on 10 Feb 2012 at 10:13
Никита, а что значит "уходим из активити"?
нажимаем back, или выбираем какой-то элемент
в списке или как-то ещё?
У меня при нажатии back - вызываются removeSubscribers
Т.е. вызывается в тот момент, когда активити
удаляется из стека.
Original comment by Nickolay...@gmail.com
on 10 Feb 2012 at 1:04
У меня получается воспроизвести такой лог
как у вас примерно так:
запустить приложение из идеи
зайти в активити избранного
нажать кнопку home
с рабочего стола запустить ярлык
приложения
(При этом приложение запустится с экрана
dashboard, а не с экрана favorites
как должно происходить)
Получить такой лог, не устанавливая
приложение из ide, нормальных условиях
эксплуатации мне не удалось.
Original comment by Nickolay...@gmail.com
on 10 Feb 2012 at 1:14
Да, по нажатию на home та же фигня, но я имел
ввиду выбрать какой-нибудь из тайников, а в
активити информации вернуться на дашборд и
снова в избранное и так по кругу
Original comment by Nikita.B...@gmail.com
on 10 Feb 2012 at 1:29
если по кругу ходить - то да, пока они в
стеке лежат remove не произойдёт
Original comment by Nickolay...@gmail.com
on 10 Feb 2012 at 1:40
Добавил очистку адаптера в onPause, теперь при
onPause происходит detach для всех view.
В onResume он в любом случае заполняется заново.
Original comment by Nickolay...@gmail.com
on 15 Feb 2012 at 9:03
Original issue reported on code.google.com by
Nickolay...@gmail.com
on 21 Jan 2012 at 9:30