Мы сталкиваемся с действительно болезненной проблемой с ActionBar
здесь, и мне было интересно, нашел ли кто-нибудь еще решение. Сама проблема довольно проста:
Мы часто запускаем фоновые задачи в действиях onCreate
или onResume
, поскольку на большинстве наших экранов должны отображаться данные, загруженные из веб-службы. Пока эти задачи выполняются, мы показываем спиннер обновления ActionBar и анимируем его. Проблема в том, что onCreate и onResume выполняются раньше, чем onCreateOptionsMenu
, поэтому в тот момент, когда мы запускаем задачу, спиннер обновления даже не существует. Следовательно, это не будет оживлять.
Я не вижу простого способа обойти это. Я думаю, что мы могли бы сохранить информацию о задаче, создаваемой в onCreate, и как только ActionBar станет доступным, обновите ее соответствующим образом. Но, тем не менее, я не могу поверить, что сценарий использования настолько распространен, насколько это трудно сделать с помощью ActionBar?