我正在尝试让 Spinner 在 Android 中工作。它显示良好,我可以选择列表中的任何一个选项。但如何将其转换为字符串呢? 我本以为在下面的代码中“selected”将保存选定的字符串,但我得到了“本地类 YourItemSelectedListener 的非法修饰符”; “YourItemSelectedListener”上出现“仅允许抽象或最终”错误。 我究竟做错了什么? 非常感谢您的帮助。
Spinner spinnerFPS = (Spinner) findViewById(R.id.sp_FPS);
ArrayAdapter adapter = ArrayAdapter.createFromResource(
this, R.array.framesps, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinnerFPS.setAdapter(adapter);
spinnerFPS.setOnItemSelectedListener(new YourItemSelectedListener());
public class YourItemSelectedListener implements OnItemSelectedListener {
public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
String selected = parent.getItemAtPosition(pos).toString();
}
public void onNothingSelected(AdapterView parent) {
// Do nothing.
}
}
最佳答案
ArrayAdapter adapter = ArrayAdapter.createFromResource(
this, items, android.R.layout.simple_spinner_item);
您必须添加CurrentActivityName.this
。这将解决该问题。您只是无法将参数上下文作为 this
传递。您必须输入ActivityName.this
。
关于android - 在 Android 中使用 Spinner 选择作为值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4233727/