Android How to use a spinner

사용 언어: Kotlin 1.8.10
사용 버전: Android Studio Electric Eel 2022.1.1 Patch 2

안드로이드 How to use a spinner를 알아보겠습니다.


안드로이드에는 드롭 다운 방식으로 메뉴를 나타낼 수 있는 뷰가 있습니다. 바로 Spinner인데요.
요렇습니다.









먼저, 사용할 Spinner를 layout에 만들어 줍니다.

<Spinner />






스피너에는 3 가지 요소가 필요합니다.

• Spinner

• SpinnerAdapter

• AdapterView.OnItemSelectedListener



스피너에 나타날 목록들은 string resource file로 만들어서 줄 수도 있고, 그냥 Array를 사용해서 만들 수도 있습니다.

resourece를 사용하면 다음과 같이 하면 됩니다.







하지만, 저렇게 사용하기보다는 Array를 사용해서 만드는 게 더 간편하고 자주 사용될 것 같아서 Array를 직접 만들어 보겠습니다.


24 번째 줄에서 spinner를 불러옵니다.

27 번째 줄처럼 spinner에 사용할 목록을 만듭니다.

30 번째 줄처럼 ArrayAdapter를 만듭니다.

android.R.layout.simple_spinner_item으로 설정합니다.

35 번째 줄에서 setDropDownViewResource에 android.R.layout.simple_spinner_dropdown_item을 설정합니다.

38 번째 줄처럼 spinner adaper를 설정합니다.







실행해 봅시다.







음, 메뉴가 원래 텍스트를 가리지 않았으면 좋겠습니다.

android:overlapAnchor를 false로 만들어 줍니다.












메뉴에 아이콘을 넣고 싶다면, ImageSpan을 사용합니다.






아이템이 선택되는 것은 AdapterView.OnItemSelectedListener를 상속받아서 확인합니다.

18 번째 줄의 onItemSelected는 아이템이 선택되었을 때 작동됩니다.

19 번째 줄의 onNothingSelected는 아이템이 아무것도 선택되지 않았을 때입니다.






69 번째 줄처럼 onItemSelectedListener에 this를 넣어줍니다.







끝.



카테고리: Android

댓글

이 블로그의 인기 게시물

Python urllib.parse.quote()

Python OpenCV 빈 화면 만들기

tensorflow tf.random.uniform()

Android Notification with Full Screen

KiCad 시작하기 2 (PCB 만들기)

Android Minimum touch target size

Python bs4.SoupStrainer()

KiCad 시작하기 4 (기존 회로도 수정 및 추가)

음악 총보(Score), 파트보(Part)

tensorflow tf.expand_dims()