Android rZone.getSelectedItemPosition()+1; Toast.makeText(getApplicationContext(),“项目位置为=”+Hold,Toast.LENGTH_SHORT).show(); 字符串N=z.getZn
rZone.getSelectedItemPosition()+1; Toast.makeText(getApplicationContext(),“项目位置为=”+Hold,Toast.LENGTH_SHORT).show(); 字符串N=z.getZname(); 字符串zid=z.getZid(); Toast.makeText(getApplicationContext(),“Item Name=“+N+”,Item ID=“+zid,Toast.LENGTH\u SHORT).show(); } @凌驾 未选择公共无效(AdapterView父级){ } }); } @凌驾 失败时公共无效(调用调用,可丢弃的t){ //由于请求失败,此处记录错误 Log.e(TAG,t.toString()); } });Android rZone.getSelectedItemPosition()+1; Toast.makeText(getApplicationContext(),“项目位置为=”+Hold,Toast.LENGTH_SHORT).show(); 字符串N=z.getZn,android,android-spinner,android-adapter,Android,Android Spinner,Android Adapter,rZone.getSelectedItemPosition()+1; Toast.makeText(getApplicationContext(),“项目位置为=”+Hold,Toast.LENGTH_SHORT).show(); 字符串N=z.getZname(); 字符串zid=z.getZid(); Toast.makeText(getApplicationContext(),“Item Name=“+N+”,Item ID=“+zid,Toast.LENGTH\u SHORT).show
如果您有位置,您只需从给定位置的列表中获取项目,并获取其ID。如果您有位置,您只需从给定位置的列表中获取项目,并获取其ID。如果我遵循您的代码,我将获得“String N=z.getZname();”的正确值,但是Spinner加载了错误的值。我可以知道它加载了什么值吗?Spinner加载了错误的值:com.nitolniloy.operating.model。Zone@d1.. com.nitolniloy.operating.model。Zone@5f.. com.nitolniloy.operating.model。Zone@58.. com.nitolniloy.operating.model。Zone@95.. 如果我应用“itemsid[position];”。这些是真正的值-Zone1 Zone2 Zone3 Zone4您是否在
Zone
类中重写了toString方法?谢谢。现在可以了@重写公共字符串toString(){return getZname();}adapter=new ArrayAdapter(getApplicationContext(),android.R.layout.simple_可选_列表_项,zonelst);如果我遵循您的代码,我会得到“String N=z.getZname();”的正确值,但Spinner加载的值不正确。我可以知道它加载的是什么值吗?Spinner加载的值不正确:com.nitolniloy.operating.model。Zone@d1.. com.nitolniloy.operating.model。Zone@5f.. com.nitolniloy.operating.model。Zone@58.. com.nitolniloy.operating.model。Zone@95.. 如果我应用“itemsid[position];”。这些是真正的值-Zone1 Zone2 Zone3 Zone4您是否在Zone
类中重写了toString方法?谢谢。现在可以了@重写公共字符串toString(){return getZname();}adapter=new ArrayAdapter(getApplicationContext(),android.R.layout.simple_可选_列表_项,zonelst);
List<Zone> zonelst=response.body().getZoneslist();
for(int i=0; i<zonelst.size(); i++){
//Storing names to string array
items[i] = zonelst.get(i).getZname();
itemsid[i]=zonelst.get(i).getZid();
}
public class Zone {
@SerializedName("ZID")
private String zid;
@SerializedName("ZName")
private String zname;
public Zone(String zid, String zname) {
this.zid = zid;
this.zname = zname;
}
public String getZid() {
return zid;
}
public void setZid(String zid) {
this.zid = zid;
}
public String getZname() {
return zname;
}
public void setZname(String zname) {
this.zname = zname;
}
}
Call<ZoneApiResponse> call = apiService.getZoneInfoList();
call.enqueue(new Callback<ZoneApiResponse>() {
@Override
public void onResponse(Call<ZoneApiResponse> call, Response<ZoneApiResponse> response) {
List<Zone> zonelst=response.body().getZoneslist();
Log.d(TAG,"Number of Zone received1: "+zonelst.size());
//*********DROPDOWN******************************************************
//String array to store all the zone names
String[] items = new String[zonelst.size()];
String[] itemsid = new String[zonelst.size()];
//Traversing through the whole list to get all the names
for(int i=0; i<zonelst.size(); i++){
//Storing names to string array
items[i] = zonelst.get(i).getZname();
itemsid[i]=zonelst.get(i).getZid();
}
final Spinner spnrZone=(Spinner)findViewById(R.id.spinnerZone);
ArrayAdapter<String> adapter;
adapter = new ArrayAdapter<String>(getApplicationContext(), R.layout.support_simple_spinner_dropdown_item, items); //getApplication()
//setting adapter to spinner
spnrZone.setAdapter(adapter);
//Creating an array adapter for list view
spnrZone.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
int Hold = spnrZone.getSelectedItemPosition()+1;
Toast.makeText(getApplicationContext(), "Item Position is = "+Hold, Toast.LENGTH_SHORT).show();
String N=parent.getItemAtPosition(position).toString();
Toast.makeText(getApplicationContext(), "Item Name = "+N, Toast.LENGTH_SHORT).show();
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
}
@Override
public void onFailure(Call<ZoneApiResponse> call, Throwable t) {
// Log error here since request failed
Log.e(TAG,t.toString());
}
});
spnrZone.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
int Hold = spnrZone.getSelectedItemPosition()+1;
Toast.makeText(getApplicationContext(), "Item Position is = "+Hold, Toast.LENGTH_SHORT).show();
String N=parent.getItemAtPosition(position).toString();
Toast.makeText(getApplicationContext(), "Item Name = "+N, Toast.LENGTH_SHORT).show();
String id=itemsid[position]; //simply get its id (String or int use whatev er its type)
}
@Override
public String toString() {
return getZname();
}
Call<ZoneApiResponse> call = apiService.getZoneInfoList();
call.enqueue(new Callback<ZoneApiResponse>() {
@Override
public void onResponse(Call<ZoneApiResponse> call, Response<ZoneApiResponse> response) {
List<Zone> zonelst=response.body().getZoneslist();
Log.d(TAG,"Number of Zone received1: "+zonelst.size());
//*********DROPDOWN******************************************************
final Spinner spnrZone=(Spinner)findViewById(R.id.spinnerZone);
ArrayAdapter<Zone> adapter;
adapter = new ArrayAdapter<Zone>(getApplicationContext(), R.layout.simple_selectable_list_item,zonelst); //getApplication()
//setting adapter to spinner
spnrZone.setAdapter(adapter);
//Creating an array adapter for list view
spnrZone.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
Zone z = (Zone) parent.getItemAtPosition(position);
int Hold = spnrZone.getSelectedItemPosition()+1;
Toast.makeText(getApplicationContext(), "Item Position is = "+Hold, Toast.LENGTH_SHORT).show();
String N = z.getZname();
String zid = z.getZid();
Toast.makeText(getApplicationContext(), "Item Name = "+N+",Item ID = "+zid, Toast.LENGTH_SHORT).show();
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
}
@Override
public void onFailure(Call<ZoneApiResponse> call, Throwable t) {
// Log error here since request failed
Log.e(TAG,t.toString());
}
});