Android Spinner:获取选中的项目改变事件 [英] Android Spinner: Get the selected item change event

查看:34
本文介绍了Android Spinner:获取选中的项目改变事件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

How can you set the event listener for a Spinner when the selected item changes?

How can you set the event listener for a Spinner when the selected item changes?

基本上我想做的事情与此类似:

Basically what I am trying to do is something similar to this:

spinner1.onSelectionChange = handleSelectionChange;

void handleSelectionChange(Object sender){
    //handle event
}

推荐答案

之前的一些答案不正确.它们适用于其他小部件和视图,但 Spinner 小部件 明确指出:

Some of the previous answers are not correct. They work for other widgets and views, but the documentation for the Spinner widget clearly states:

微调器不支持项目点击事件.调用这个方法会引发一个例外.

A spinner does not support item click events. Calling this method will raise an exception.

最好使用 OnItemSelectedListener() 代替:

spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
    @Override
    public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) {
        // your code here
    }

    @Override
    public void onNothingSelected(AdapterView<?> parentView) {
        // your code here
    }

});

这对我有用.

注意 onItemSelected 方法在构建视图时也会被调用,所以你可以考虑把它放在 onCreate() 方法调用中.

Note that onItemSelected method is also invoked when the view is being build, so you can consider putting it inside onCreate() method call.

这篇关于Android Spinner:获取选中的项目改变事件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆