SimpleCursorAdapter在Activity中崩溃

时间:2010-08-05 14:12:16

标签: android android-sqlite simplecursoradapter

我正在尝试创建一个使用SimpleCursorAdapter的列表的活动,但它无法正常工作。我正在正确创建光标,因为当我打印出文本时,所有值都打印出来,我知道SimpleCursorAdapter类没有任何问题,因为当我将它与图像内容提供程序一起使用时,它会正确显示。但是,当我尝试将两者放在一起时,当我尝试打开活动时,我的应用程序崩溃了。这是我的源代码:

package com.mao.crypt;

import android.app.ListActivity;
import android.content.Intent;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.View;
import android.widget.ListView;
import android.widget.SimpleCursorAdapter;

public class OpenActivity extends ListActivity{

    Cursor cursor;

    @Override    
    public void onCreate(Bundle icicle){

        super.onCreate(icicle);
        SQLiteDatabase db = new NotesDBHelper(getApplicationContext()).getReadableDatabase();

        cursor = db.rawQuery("SELECT _id,title,text FROM notes ORDER BY title ASC", null);

        startManagingCursor(cursor);
        SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, android.R.layout.simple_list_item_2, cursor, new String[]{"title","text"},new int[]{android.R.id.text1, android.R.id.text2});
        setListAdapter(adapter);
    }

    public void onDestroy(){
        cursor.close();
    }

    @Override
    public void onListItemClick(ListView l, View v, int position, long id){
        cursor.moveToPosition(position);
        String title=cursor.getString(0);
        Intent data = new Intent();
        data.putExtra("title", title);   
        setResult(RESULT_OK,data);
            finish();
    }
}

有关如何解决此问题的任何建议吗?

0 个答案:

没有答案