我有一个从 SQLite 返回值传递到 Spinner 的数组
在DatabaseHelper.java
处我创建了1个void
public List<String> getSpinnerSupir(){
List<String> labels = new ArrayList<String>();
// Select All Query
String selectQuery = "SELECT * FROM " + "sopir";
SQLiteDatabase db = this.getReadableDatabase();
Cursor cursor = db.rawQuery(selectQuery, null);
// looping through all rows and adding to list
if (cursor.moveToFirst()) {
do {
labels.add(cursor.getString(0)+cursor.getString(1));
} while (cursor.moveToNext());
}
// closing connection
cursor.close();
db.close();
// returning lables
return labels;
}
我使用要在 Spinner 上显示的标签值
List<String> lables = db.getSpinnerSupir();
Log.d("array:", String.valueOf(lables));
并在日志显示
[1Juniarto, 2Agus Haryanto, 3Supriadi, 4Cahyanto]
我需要操纵
[Juniarto, Agus Haryanto, Supriadi, Cahyanto]
如何操纵它?
谢谢
最佳答案
您正在将两列第 0 列
和 第 1 列
添加到标签
labels.add(cursor.getString(0)+cursor.getString(1));
所以你的 ID 作为第 0 列,因此它会与字符串一起添加
修改为
labels.add(cursor.getString(1));
编辑
返回 ID 和名称
创建一个如下所示的类
class Data {
private String id;
private String label;
public Data(String id,String label){
this.id=id;
this.label=label;
}
}
将数据插入类
ArrayList<Data> arrayList=new ArrayList<Data>();
arrayList.add(new Data(cursor.getString(0),cursor.getString(1)));
返回数组列表并使用它:)
关于java - 如何在java android中操作数组值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55238715/