问题

当选择的项目更改时,如何为Spinner设置事件侦听器?

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

 spinner1.onSelectionChange = handleSelectionChange;

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

  最佳答案

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

spinner不支持单击项目 事件.调用此方法会提高 例外。

更好地使用 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
    }

});
 

这对我有用.

请注意,当视图正在构建时,也会调用 onItemSelective 方法,所以您可以考虑将其放在 onCreate() 方法调用中。

  相同标签的其他问题

androideventsspinnerandroid-spinner