Một số câu trả lời trước không đúng. Chúng hoạt động cho các tiện ích và chế độ xem khác, nhưng tài liệu về tiện ích Spinner nêu rõ:
Một spinner không hỗ trợ các sự kiện bấm vào mục. Gọi phương thức này sẽ đưa ra một ngoại lệ.
Thay vào đó, sử dụng tốt hơn 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
}
});
Điều này làm việc cho tôi.
Lưu ý rằng phương thức onItemSelected cũng được gọi khi chế độ xem đang được xây dựng, vì vậy bạn có thể xem xét đưa nó vào trong onCreate()
cuộc gọi phương thức.