【发布时间】:2013-12-16 07:10:55
【问题描述】:
我有这个 cursorAdapter,我为它定义了一个新对象。一旦声明了对象“itemAdapter”,我就得到了从 bindView 方法加载到数组(名称)中的所有字符串的名称。
@Override
protected void onActivityResult(int arg0, int arg1, Intent arg2) {
// TODO Auto-generated method stub
Log.d("success", "On activity result");
super.onActivityResult(arg0, arg1, arg2);
if(arg1==RESULT_OK){
db=new DatabaseControl(this);
db.open();
CategoryCursorAdapter itemAdapter=new CategoryCursorAdapter(this, db.getItemCursor(-1), CursorAdapter.FLAG_REGISTER_CONTENT_OBSERVER, "item_name",1,db);
iFrag.getListView().setAdapter(itemAdapter);
Log.d("success", String.valueOf(itemAdapter.Names.size()));
}
}
问题是系统在删除“itemAdapter”之前执行了“log.d”(最后一行)命令。由于 'Names' 数组仅在声明 itemAdapter 后才填充值,因此 logcat 将 Names 数组的大小显示为 0。
我已经确认,一旦声明了 itemAdapter,names 数组就不会保持为空。
请帮忙!!!!
【问题讨论】:
标签: android sqlite android-cursoradapter