gpt4 book ai didi

android - 列表到数组适配器

转载 作者:太空狗 更新时间:2023-10-29 14:39:47 28 4
gpt4 key购买 nike

这是我在 DatabaseHelper 中的查询

public List<String> getallstatus(){
List<String> list = new ArrayList<>();
String query = "select * from ref_status";
SQLiteDatabase db = this.getReadableDatabase();
Cursor cursor = db.rawQuery(query,null);
try{
if(cursor.moveToFirst()){

do{
list.add(cursor.getString(0));
list.add(cursor.getString(1));

}while(cursor.moveToNext());

}

cursor.close();
db.close();


}catch(Exception e){
Log.e("onins" , e.getMessage(),e);

}
return list;
}

这是我的数据提供者类

public class DataProvider {

private String regcode, regname;

public DataProvider(String regcode, String regname){
this.regcode =regcode;
this.regname = regname;
}

public String getRegcode(){ return regcode; }

public void setRegCode(){ this.regcode = regcode; }

public String getRegname(){ return regname; }

public void setRegname() { this.regname = regname; }


@Override
public String toString(){
return regname;
}
@Override
public boolean equals(Object obj) {
if(obj instanceof DataProvider){
DataProvider c = (DataProvider ) obj;
if(c.getRegname().equals(regname) && c.getRegcode()==regcode )
return true;
}
return false;
}

}

这是我主要 Activity 中的onCreate

        db = new DatabaseHelper(getApplicationContext());
List<String> result = db.getallstatus();

//spinner elements
ArrayList<DataProvider> datalist = new ArrayList<>();


ArrayAdapter<DataProvider> adapter = new ArrayAdapter<DataProvider>(this,android.R.layout.simple_spinner_dropdown_item,datalist);
// Drop down layout style - list view with radio button
// adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
//attaching adapter to spinner
valueofspin.setAdapter(adapter);
// valueofspin.setSelection(adapter.getPosition(myItem));

我只想将此列表结果的结果传递给我的数组适配器。我是 android studio 的新手,希望有人能帮助我。提前致谢。

最佳答案

这样做 在您的 Arrayadapter 中创建一个构造函数

  public class ArrayAdapter extends....{
ArrayList<DataProvider> dataList;
List<String> list;
ArrayAdapter(Context context,resources id,ArrayList<DataProvider>
dataList,List<String> list){
this.context=context;
this.dataList = datalist;
this.list = list
}
}

在您的 Activity 中...执行此操作

    ArrayAdapter<DataProvider> adapter = new ArrayAdapter<DataProvider>(this,android.R.layout.simple_spinner_dropdown_item,datalist,result);

通过构造函数传递结果..

关于android - 列表到数组适配器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50206924/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com