마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

커서어댑터 오류 한 번 확인해주세요!! [closed]

0 추천

안녕하세요. 메인엑티비티에서 기록 버튼 누르면 기록엑티비티 들어가서 기록하고 기록한 내용을 데이터베이스로 저장까지했습니다.

여기까지 문제가 없고 기록하면 리스트뷰에 출력해야하는데 여기서 다시 어플을 실행하면 오류가 뿜으면서 홈화면으로 튕겨지네요.

at com.example.keh_a.dblistview.DBAdapter.<init>(DBAdapter.java:0)
atcom.example.keh_a.dblistview.main.selectDB(main.java:51)
atcom.example.keh_a.dblistview.main.onCreate(main.java:31)

package com.example.keh_a.dblistview;

import android.content.Context;
import android.database.Cursor;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.CursorAdapter;
import android.widget.TextView;

class DBAdapter extends CursorAdapter {

    @SuppressWarnings("deprecation")
    public DBAdapter(Context context, Cursor c) {
        super(context, c);
    }

    @Override
    public void bindView(View view, Context context, Cursor cursor) {

        TextView title = (TextView) view.findViewById(R.id.text_item_title);
        TextView date = (TextView) view.findViewById(R.id.text_item_date);

        String str_title = cursor.getString(cursor.getColumnIndex("TITLE"));
        String str_date = cursor.getString(cursor. getColumnIndex("DATE"));

        title.setText(str_title);
        date .setText(str_date);
    }

    @Override
    public View newView(Context context, Cursor cursor, ViewGroup viewGroup) {
        LayoutInflater inflater = LayoutInflater.from(context);
        View v = inflater.inflate(R.layout.item, viewGroup, false);

        return v;
    }
}

이건 커서 어댑터 부분이고

public void selectDB(){
    db = dbHelper.getWritableDatabase();
    sql = "select TITLE, CONTEXT, DATE from " + dbHelper.TABLE_NAME;

    Cursor cursor = db.rawQuery(sql, null);

    if(cursor.getCount() > 0){
        startManagingCursor(cursor);
        dbAdapter = new DBAdapter(this, cursor);
        list.setAdapter(dbAdapter);
    }

    dbAdapter.changeCursor(cursor);
}

이건 메인 엑티비티에서 오류난 부분이

dbAdapter = new DBAdapter(this, cursor);

이거에요. 여기부터 문제가 있었습니다.

무슨 문제가 있는걸까요?

질문을 종료한 이유: 소스코드 일부분 잘라서 보이고 잘못 올린 것 같아 삭제합니다.
성수소년 (550 포인트) 님이 2016년 12월 28일 질문
성수소년님이 2016년 12월 28일 closed
...