Spinner无法正常工作.这是我的代码:
public class second extends Activity{
Spinner spin;
String[] str;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.second);
spin = (Spinner) findViewById(R.id.spin);
str = new String[] {"bike","car"};
spin.setAdapter(new ArrayAdapter<CharSequence>(this,android.R.layout.simple_dropdown_item_1line,str));
spin.setonItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> adapter,View view,int pos,long id) {
// Todo Auto-generated method stub
String data= spin.getItemAtPosition(pos).toString();
Toast.makeText(second.this,data,Toast.LENGTH_SHORT).show();
}
});
}
}
解决方法
你犯的唯一错误是你设置了不同的事件监听器..
Listener OnItemClickListener适用于ListView ..
对于Spinner,你必须设置OnItemSelectedListener ..
尝试将OnItemClickListener替换为OnItemSelectedListener,如:
spin.OnItemSelectedListener (new OnItemSelectedListener() {
public void onItemClick(AdapterView<?> adapter,long id) {
// Todo Auto-generated method stub
String data= spin.getItemAtPosition(pos).toString();
Toast.makeText(second.this,Toast.LENGTH_SHORT).show();
}
});