Spinner在android中不起作用

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();
    }

});

相关文章

这篇“android轻量级无侵入式管理数据库自动升级组件怎么实现...
今天小编给大家分享一下Android实现自定义圆形进度条的常用方...
这篇文章主要讲解了“Android如何解决字符对齐问题”,文中的...
这篇文章主要介绍“Android岛屿数量算法怎么使用”的相关知识...
本篇内容主要讲解“Android如何开发MQTT协议的模型及通信”,...
本文小编为大家详细介绍“Android数据压缩的方法是什么”,内...