我在这个帖子上读了许多类似的问题,但没有一个能帮助我...这是我的代码:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Spinner spinner = (Spinner) findViewById(R.id.imc_spinner);
// Create an ArrayAdapter using the string array and a default spinner layout
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
R.array.imc_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 void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
// An item was selected. You can retrieve the selected item using
imc_met = parent.getItemAtPosition(pos).toString();
}
Run Code Online (Sandbox Code Playgroud)
我宣布imc_met为public String imc_met;.问题是imc_met不包含微调器的选定项的值,但它是null ...
哪里出了问题?
Thx提前.
Rob*_*ood 33
使用:
.imc_met = Spinner.getSelectedItem()的toString();
代替:
imc_met = parent.getItemAtPosition(pos).toString();
更新:
如果您没有以正确的方式将侦听器分配给您的微调器,请执行以下操作:
spin.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {
String imc_met=spin.getSelectedItem().toString();
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
});
Run Code Online (Sandbox Code Playgroud)
试试这个:
imc_met=Spinner.getSelectedItem().toString();
Run Code Online (Sandbox Code Playgroud)
对不起.我忘了
spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) {
imc_met=Spinner.getSelectedItem().toString();
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
93542 次 |
| 最近记录: |