我希望从Intent Service中获取活动状态。在Intent Service中,填充数据到列表控件中。
当我在FloatSomeService(IntentService)中调用DictionaryListAdapter时,无法获得活动状态。
(FloatSomeService.java)服务
public void onCreate() {
// TODO Auto-generated method stub
super.onCreate();
windowManager = (WindowManager)getSystemService(WINDOW_SERVICE);
// Find Controls
LayoutInflater inflater = LayoutInflater.from(this);
viewFloat = inflater.inflate(R.layout.float_view, null);
listview = (ListView)viewFloat.findViewById(R.id.listDic);
this.generateData();
// *** Error : When create adapter, get activity from base context *** //
myAdapter = new DictionaryListAdapter((Activity)getBaseContext(), myListItem);
listview.setAdapter(myAdapter);
......................
windowManager.addView(viewFloat, parameters);
}
(DictionaryListAdapter.java)
public class DictionaryListAdapter extends BaseAdapter{
private Activity myContext;
private ArrayList<HistoryListItem> myItems;
public DictionaryListAdapter(Activity activity, ArrayList<DictionaryListItem> items){
this.myContext = activity;
this.myList = items;
}
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
if (convertView == null) {
LayoutInflater layoutInflater = this.myContext.getLayoutInflater();
convertView = layoutInflater.inflate(R.layout.history_list_item, null);
}
ImageView imgPerson = (ImageView)convertView.findViewById(R.id.imgPerson);
...........................
}}