티스토리 뷰

CursorAdapter를 생성할 때 Cursor클래스 변수를 가져와야한다.

이때, Cursor를 이용해서

newView 와 bindView를 사용하기 위해서는

꼭 DB에 '_id' 라는 이름으로 컬럼을 만들어놔야만 한다.

이 컬럼으로 Cursor가 이동되므로 설정을 해줘야만 한다.

cf>여기에 나오는 DBAdapter와 ListViewAdapter는 Custom형태로 만들었다.

/** Called when the activity is first created. */
    private final String DB_NAME = "TestDB";
    private final String TABLE_NAME = "TestTable2";
    private int displayWidth;
   
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        try{
        DBAdapter adapter = new DBAdapter(this);
        adapter.createDB(this, DB_NAME);
      
        String[] textFields = new String[2];
        textFields[0] = "_id integer primary key autoincrement ";
        textFields[1] = "value text ";
        adapter.createTable(TABLE_NAME, textFields);
       
        // DB에서 커서를 가져온다.
        Cursor c = adapter.getCursor(TABLE_NAME);수
        ListViewAdapter listadapter = new ListViewAdapter(this, c);
       
        Display display = ((WindowManager) getSystemService(WINDOW_SERVICE)).getDefaultDisplay();
        displayWidth = display.getWidth();
       
        ListView list = (ListView)findViewById(R.id.ListView01);
       
        list.setAdapter(listadapter);
        }catch(Exception error){
            Log.e("DEBUG_TAG","adapter : "+error);
        }
       
    }

// DBAdapter안에 함수
public Cursor getCursor(String tableName){
        Cursor mCursor = mDatabase.query(tableName, null, null, null, null, null, null);
       
        mCursor.moveToFirst();
       
        return mCursor;
    }
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함