我正在尝试创建一个微调器,用于显示返回Pasta
对象的API中的数据。
我希望Spinner的可选标签是Pasta.label
,但我希望Spinner返回的实际值是另一个值(Pasta.Id
(。在HTML:中有点像这样
<select>
<option value="spag">Spaghetti</option>
<option value="ravi">Ravioli</option>
</select>
我在SO上看到过其他问题,但似乎没有一个是真正的结论性问题。
我已经有了具有我需要的值的HashMap<String, String>
。我只需要弄清楚如何将其转化为微调器。我想创建一个这样的类:
public class SpinnerItem {
public String key;
public String value;
}
并用SpinnerItems填充我的Spinner,这样当我稍后检索SpinnerItem时,我就可以执行getSelectedItem().getKey()
,但我该如何编写一个执行此操作的ArrayAdapter呢?
您只需要在SpinnerItem类中使用字符串函数
public class SpinnerItem {
public String key;
public String value;
@Override
public String toString() {
return value;
}
}
这里也有现成的样品,希望能有所帮助。