我似乎无法显示数据库中的多个数据。只打印了我的数据库中的一个数据。
DatabaseHelper:
public Cursor returnData2(String text, String look){
String data;
String where = "_column LIKE '"+look+"%'";
Cursor c = myDataBase.query("translate_metadata", null, where, null, null, null, null);
c.moveToFirst();
while(!c.isAfterLast()){
c.moveToNext();
}
return c;
}
活性:
String inputtext = ((EditText) findViewById(R.id.inputKey)).getText().toString();
String lowerinput = inputtext.toLowerCase();
data = myDbHelper.returnData2("databasename",lowerinput);
if(data.moveToFirst()){
rdata = data.getString(1);
((TextView) findViewById(R.id.keyList)).setText(""+rdata.toString()+"\n");
}
myDbHelper.close();
}
抱歉,如果它令人困惑。但我需要帮助。任何建议都可以。谢谢
答案 0 :(得分:0)
使用TextView.append
在单个TextView中显示所有数据:
TextView txtView=(TextView) findViewById(R.id.keyList);
if(data.moveToFirst()){
rdata = data.getString(1);
txtView.append(""+rdata.toString()+"\n");
}
答案 1 :(得分:0)
我刚刚修改了你的尝试并尝试了这个
public Cursor returnData2(String text, String look){
String data;
String where = "_column LIKE '"+look+"%'";
Cursor c = myDataBase.query("translate_metadata", null, where, null, null, null, null);
myDbHelper.close();
return c;
}
TextView txtView=(TextView) findViewById(R.id.keyList);
String inputtext = ((EditText) findViewById(R.id.inputKey)).getText().toString();
String lowerinput = inputtext.toLowerCase();
data = myDbHelper.returnData2("databasename",lowerinput);
if(data.moveToFirst()){
while(!data.isAfterLast()){
rdata = data.getString(1);
txtView.append(""+rdata.toString()+"\n");
c.moveToNext();
}
}
data.close();