我有一个带有一些字符串数组的微调器,它们有一些值=电子邮件,我需要在微调器中选择特定项(字符串数组)时获取电子邮件(值),但我得到的只是一个字符串(名称) /字符串数组中的标题),我只需要它如何在字符串数组中获取字符串的值。 string-array的代码看起来像那样
<string-array name="choose_array">
<item>Choose</item>
<item value = "something@mail.com">somethingName</item>
<item value = "something@mail.com">somethingName</item>
</string-array>
我需要获取所选字符串的值(电子邮件)才能使用它但我不知道如何使用它。 我尝试了一些方法来获取它,但我得到的只是字符串(代码中的somethingName)
答案 0 :(得分:0)
<string-array name="progress_array">
<item>Not Done</item>
<item>Done</item>
<item>On Hold</item>
<item>In Progress</item>
</string-array>
并且微调器的代码是
spinner = (Spinner) findViewById(R.id.selection);
// Create an ArrayAdapter using the string array and a default spinner layout
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
R.array.progress_array, android.R.layout.simple_spinner_item);
// Specify the layout to use when the list of choices appears
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
// Apply the adapter to the spinner
spinner.setAdapter(adapter);
}
public boolean doTask(){
String spinnerValue = (String)spinner.getSelectedItem();
if(spinnerValue.equals("Done")){
spinnerInd = 1;
}else if(spinnerValue.equals("Not Done")){
spinnerInd = 0;
}else if(spinnerValue.equals("On Hold")){
spinnerInd = 2;
}else if(spinnerValue.equals("In Progress")){
spinnerInd = 3;
}
}
答案 1 :(得分:0)
的strings.xml
<string-array name="your_array_string">
<item>Item1</item>
<item>Item2</item>
</string-array>
转换为字符串数组setOnItemSelectedListener
,您可以获得值
String[] your_array = getResources().getStringArray(R.array.your_array_string);
spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) {
String selectedValue=your_array[position];
}
}
@Override
public void onNothingSelected(AdapterView<?> parentView) {
// Your code here
}
});