在我的应用程序中,我在listview中显示来自数据库的数据。在listview中,1特定的文本视图应该是动态的(即)基于特定textview应该更改的一个列值,
以下是我的完整数据库结构:
http://www.freeimagehosting.net/bmcrp
http://www.freeimagehosting.net/8f13z
。如果reccurence为“true”,则表示textview 9应显示其他总数。
我的代码如下:
Cursor c = db.getExpensetitle(intent.getStringExtra("grpsdbexp"));
startManagingCursor(c);
-------------------->Here i have to use the condition.
from = new String[] {db.KEY_DATE,db.KEY_DESC,db.KEY_INCOME,db.KEY_QUANTITY,db.KEY_TOTAL,db.KEY_ROWID};
to = new int[] {R.id.text1 ,R.id.text3,R.id.text5,R.id.text7,R.id.text9,R.id.text11};
SimpleCursorAdapter notes =
new SimpleCursorAdapter(this, R.layout.columnviewexp, c, from, to);
lv.setAdapter(notes);
请帮帮我。谢谢。
答案 0 :(得分:0)
由于存在条件,您应该自定义游标适配器而不是SimpleCursorAdapter。
https://codereview.stackexchange.com/questions/1057/android-custom-cursoradapter-design
SimpleCursorAdapter notes =
new SimpleCursorAdapter(this, R.layout.columnviewexp, c, from, to)
{
@Override
public void bindView(View view, Context context, Cursor cursor) {
boolean reurrence= cursor.getBoolean(cursor.getColumnIndex("recurrence"));
TextView text9=(TextView)view.findViewById(R.id.text9);
String text=null;
if(recurrence)
text=cursor.getString(cursor.getColumnIndex(KEY_TOTAL));
else
text=cursor.getString(cursor.getColumnIndex(KEY_REC_TOTAL));
text9.setText(text);
// Load remaining TextViews
}
};