2012-04-12 15 views
0

私は単純なリストビューを開発していますが、間違った情報を受け取りました。正しいデータ形式ではありません。アンドロイドのビュー展示を修正してください

List<Category> values = cdao.listAllItems(); 
ArrayAdapter<Category> adapter = new ArrayAdapter<Category>(this, 
    R.layout.row, values); 
setListAdapter(adapter); 


public List<Category> listAllItems() { 
    List<Category> list = new ArrayList<Category>(); 

    Cursor cursor = db.rawQuery("SELECT _id, category " + 
      " FROM category", null); 

    while (cursor.moveToNext()) { 
     Category c = new Category(); 
     c.setId(cursor.getInt(cursor.getColumnIndex("_id"))); 
     c.setCategory(cursor.getString(cursor.getColumnIndex("category"))); 
     list.add(c); 
     Log.d(wallet.utils.Constants.TAG, c.getCategory()); 
    } 
    return list; 
} 


<?xml version="1.0" encoding="utf-8"?> 
<TextView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:padding="10dp" 
    android:textSize="16sp" > 
</TextView> 

この結果は次のとおりです。[email protected]と正しい値は、単語「一般的」でなければなりません。

どうしたのですか?

ありがとうございます。

答えて

0

を試してみて、私が間違っていたものを発見しました。私はクラスのtoStringをオーバーライドするのを忘れていました。

@Override 
public String toString() { 
    return category; 
} 

他の人を助けることができます。

0

この

if(cursor.getCount > 0) { 
    cursor.moveToFirst(); 
    for(int i =0;i<cursor.getCount();i++) { 
     Category c = new Category(); 
     c.setId(cursor.getInt(cursor.getColumnIndex("_id"))); 
     c.setCategory(cursor.getString(cursor.getColumnIndex("category"))); 
     list.add(c); 
     Log.d(wallet.utils.Constants.TAG, c.getCategory()); 
    } 
} 
関連する問題