如何解决获取微调器的项目值而不是微调器字符串值
在我的应用程序中,我需要获取微调器的值。 例如,我有一个用字符串数组(strings.xml)填充的微调器“城市” 用户在微调器中选择一个值,例如“Façade du poste extérieur”,我必须以链接到“Façade du poste extérieur”值的 id 形式检索微调器的值。
<!-- Mulitchoix emplacement antenne --> <string-array name="emplacement_antenne">
<item value="521">Façade du poste extérieur</item>
<item value="522">Pignon extérieur poste</item>
<item value="523">Mur intérieur</item>
<item value="524">Intérieur sur appareil</item> </string-array>
例如,当用户选择“Façade du poste extérieur”时如何检索 id? 目前我使用这个命令行:
formulaireTypeAtn = spinner_type_antenne.getSelectedItem().toString().trim();
如何获取项目值而不是“getSelectedItem().toString()”???
编辑:
Spinner spinner_type_antenne;
spinner_type_antenne = findViewById(R.id.spinner_type_antenne);
btnValider.setonClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
formulaireTypeAtn = spinner_type_antenne.getSelectedItem().toString().trim();
}
}
解决方法
我自己找到了解决方案:)
String formulaireTypeAtn,FormulaireTypeAtnFin;
formulaireTypeAtn = String.valueOf(spinner_type_antenne.getSelectedItemId());
if (formulaireTypeAtn.equals("0")){
FormulaireTypeAtnFin = "518";
}
if (formulaireTypeAtn.equals("1")){
FormulaireTypeAtnFin = "519";
}
if (formulaireTypeAtn.equals("2")){
FormulaireTypeAtnFin = "520";
}
因此,当用户单击微调器并做出选择时,它会选择微调器中的一项,然后我获得选择的 ID(0、1、2、3 等) 我创建了一个条件,允许根据微调器中选择的 ID 为变量定义一个值。所以,我返回了所需的值。
,获取所选项目的位置:
type: ClusterIP
,
尝试在 setOnItemSelectedListener
函数中使用以下内容
List<Integer> list = new ArrayList<Integer>();
list.add(1);//add values to the list
int SelectedIndex = spinner.getSelectedItemPosition();
int value = list.get(SelectedIndex);
,
实现下面的代码,它正在工作。
for (int i = 0; i < array.length(); i++) {
if (array[i].equalsIgnoreCase("Selected spinner value")) {
String value = array_value[i];
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。