프로그래밍 언어/Android

Android Spinner : 선택한 항목 변경 이벤트 가져 오기

Rateye 2021. 8. 28. 16:33
728x90
반응형
질문 : Android Spinner : 선택한 항목 변경 이벤트 가져 오기

선택한 항목이 변경 될 때 Spinner에 대한 이벤트 리스너를 어떻게 설정할 수 있습니까?

기본적으로 내가하려는 것은 다음과 비슷합니다.

spinner1.onSelectionChange = handleSelectionChange;

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

이전 답변 중 일부가 올바르지 않습니다. 다른 위젯 및보기에서도 작동하지만 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
    }

});

이것은 나를 위해 작동합니다.

onItemSelected 메서드는 뷰가 빌드 될 때도 호출되므로 onCreate() 메서드 호출에 넣는 것을 고려할 수 있습니다.

출처 : https://stackoverflow.com/questions/1337424/android-spinner-get-the-selected-item-change-event
728x90
반응형