这是一个函数,我从数据库中为微调器调用客户名称。当我选择客户名称时,我也可以获得客户ID。怎么做?
public List<String> getAllUsers(String userID) {
List<String> userlist = new ArrayList<>();
String status= "Active";
SQLiteDatabase db = this.getReadableDatabase();
String query = "select " + COLUMN_Customer_NAME + " from customer where " + COLUMN_Customer_USERID + "='" + userID + "'"+" AND " + COLUMN_Customer_STATUS + "='" + status + "'";
Cursor cursor = db.rawQuery(query, null);
if (cursor.moveToFirst()) {
do {
userlist.add(cursor.getString(0));
} while (cursor.moveToNext());
}
cursor.close();
db.close();
return userlist;
}
答案 0 :(得分:0)
spinner_province.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
String item = parent.getItemAtPosition(position).toString();
province_id = position;
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
通过使用它,您可以从微调器获得一个选定的项目。
答案 1 :(得分:0)
创建自定义微调器并将名称和id的数组传递给微调器。并通过使用selecteditemposition从该位置的数组获取id
答案 2 :(得分:0)
为微调器创建自定义适配器
class customAdapter(context : Context ,items: List<YourUserModel>) :
ArrayAdapter<YourUserModel>(context, resourceID)
单击项目上的自定义适配器,你可以获得完整的对象,将持有名称,ID等等。
更简单但不推荐的方式你可以使用spinner位置的索引/ id将对象添加到hashmap或arraylist。然后你可以从那里得到它