我试图通过匹配一个名称但我无法完成从我的微调框视图中获取项目文本.这是我使用的代码:
for(int i=0;i<calendar_spinner.getAdapter().getCount();i++) {
String s= calendar_spinner.getAdapter().getItem(i).toString();
System.out.println("Calendars are"+s);
if(calendar_Name.equals(s))
{
System.out.println("Calendar setted");
calendar_spinner.setSelection(i);
break;
}
}
Run Code Online (Sandbox Code Playgroud)
我得到s的输出为com.android.calendermodel.MyCalendarsModel@405872a0不完全是名字,不同的东西......
检查一下:
spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View arg1,
int pos, long arg3) {
String Text = parent.getSelectedItem().toString();
}
}
Run Code Online (Sandbox Code Playgroud)
小智 5
我也在寻找一个非常类似问题的解决方案:
对于ArrayAdapter,您可以:
Spinner s = (Spinner) findViewById(R.id.spinner_id);
int i = adapter.getPosition("blue");
s.setSelection(i);
Run Code Online (Sandbox Code Playgroud)
对于自定义适配器,您可以:
Spinner s = (Spinner) findViewById(R.id.spinner_id);
for(i=0; i < adapter.getCount(); i++) {
if("blue".equals(adapter.getItem(i).toString())){
s.setSelection(i);
break;
}
}
Run Code Online (Sandbox Code Playgroud)
从以下网址获取此信息:http://www.dcpagesapps.com/developer-resources/android/23-android-spinner-tips?start = 1
| 归档时间: |
|
| 查看次数: |
10566 次 |
| 最近记录: |