问题
I have a SQLite Datebase from which I am displaying data in ListView
by SimpleCursorAdapter
. I have 2 columns but I want to displey them in 1 TextView
. How can I do that? Thanks
回答1:
Try This Code , it may help you
Method For calling Listview from Oncreate
private void populateListViewFromDB1()
{
Cursor cursor = helper1.getAllData(Sharedemail);
startManagingCursor(cursor);
String[] productname = new String[]
{
DataBaseHelper.KEY_NAMEVALUE,
DataBaseHelper.KEY_TYPE,
};
int[] viewproduct = new int[]
{
R.id.textView1,
};
// Create Adapter
MySimpleCursoradapter myCursorAdapter = new MySimpleCursoradapter
(this,
R.layout.listview,
cursor,
productname,
viewproduct);
ListView List = (ListView) findViewById(R.id.listView1);
List.setAdapter(myCursorAdapter);
}
}
MySimpleCursoradapter.java
public class MySimpleCursoradapter extends SimpleCursorAdapter {
public MySimpleCursoradapter(Context context, int layout,
Cursor cur, String[] from, int[] to) {
super(context, layout, cur, from, to);
}
@SuppressWarnings("static-access")
@Override
public View newView(Context con, Cursor c, ViewGroup arg2) {
LayoutInflater inflater = (LayoutInflater) con
.getSystemService(con.LAYOUT_INFLATER_SERVICE);
View retView = inflater.inflate(R.layout.listview, null);
return retView;
}
public void bindView(View v, Context context, Cursor c) {
String pname = c.getString(c.getColumnIndex(DataBaseHelper.KEY__NAMEVALUE));
String issuetype = c.getString(c.getColumnIndex(DataBaseHelper.KEY_TYPE));
TextView name_text = (TextView) v.findViewById(R.id.textView1);
name_text.setText(pname +":"+ issuetype);
}
}
来源:https://stackoverflow.com/questions/30571028/simplecursoradapter-set-2-columns-to-1-view