У меня есть ListView
Activity
, который использует AsyncTask
для загрузки данных из базы данных. В этой операции есть меню опций, которое проверяет, есть ли какие-либо элементы данных в ListView List в onPrepareOptionsMenu()
.Обновить ActionBar от AsyncTask
Если есть элементы, я включаю одну из опций, которая отображается на ActionBar
, что позволяет пользователю удалять элементы.
Теперь, когда начинается действие, запускается AsyncTask и по мере запуска функции onPrepareOptionsMenu(), пока AsyncTask все еще запущен, этот пункт меню никогда не включается, если устройство не перевернуто и данные списка не передаются как например, в обход AsyncTask.
Так, в AsyncTask-х onPostExecute()
, я называю invalidateOptionsMenu()
, но это не похоже, меню для обновления (я отладки кода в onCreateOptionsMenu()
и onPrepareOptionsMenu()
, и ни обжигают). Любая помощь оценивается.
По праву он должен работать. не видите причину, по которой это не должно быть вашей асинтемой, внутренним классом текущей деятельности? или отдельный класс? – Rejinderi
Внутренний класс текущей деятельности –
Предполагаю, что вы вызываете «MyActivity.this.invalidateOptionsMenu()» правильно? Можете ли вы попробовать мое предложение ниже и отладить? – Rejinderi