Редактировать: вопрос в одной строке:
Как передать контекст из MenuItem onOptionsItemSelected?
Редактировать 2: вот глобальное указание того, что я делаю: https://github.com/JakeWharton/ActionBarSherlock/blob/master/samples/fragments/src/com/actionbarsherlock/sample/fragments /FragmentTabsPager.java
Я создаю приложение на основе ActionBarSherlock. Он использует вкладки, фрагменты и вьюпейджер. Он должен быть максимально универсальным. Вкладка может содержать либо веб-просмотр, либо список. Вот снимок экрана:
Когда вкладка (SherlockListFragment) загружается впервые, она считывает содержимое из канала с помощью ASyncTask. OnPostExecute обновляет список и сохраняет результат в строку SharedPreference (как способ кэширования). Как вы понимаете, для этого AsyncTask требуется контекст. Я вызываю асинтаск из SherlockListFragment следующим образом:
x.new refreshList(this,getActivity()).execute();
(x — ссылка на мой текущий файл).
И перенесите это в мой AsyncTask вот так
public refreshList(TabList a,Context b){
this.mContext = a;
this.mCont = b;
}
Все работает нормально. Но, как видите, я добавил пункт меню для обновления.При том, как я все настроил, я не могу повторно запустить ASyncTask, так как у меня нет соответствующей контекстной информации. Может ли кто-нибудь сказать мне, как выполнить обновление в этой ситуации?
Если кому-то, кто хочет помочь, потребуется увидеть больше кода, я с радостью соглашусь.
Заранее спасибо.