Deperecated/Android_강의
안드로이드 - Spinner
누알라리
2020. 2. 12. 22:13
1. Spinner란?
- 사용자에게 항목을 주고 선택하게 할 수 있는 AdapterView
- 리스트뷰가 쫘락 나오고 사용자가 항목을 선택하면 팝업창으로 뜨는것이 Spinner.
2. 리스너
OnItemSelectedListner : 스피너에서 항목을 선택할 때 호출되는 리스너
// inner 클래스
var listener = SpinnerListener()
spinner.onItemSelectedListener = listener
// 익명 중첩 클래스
spinner2.onItemSelectedListener = object : AdapterView.OnItemSelectedListener
{
override fun onItemSelected(
parent: AdapterView<*>?,
view: View?,
position: Int,
id: Long
) {
textView.text = data2[position]
}
override fun onNothingSelected(parent: AdapterView<*>?) {
}
}
inner class SpinnerListener : AdapterView.OnItemSelectedListener
{
// position 이 사용자가 선택한 항목의 인덱스
override fun onItemSelected(parent: AdapterView<*>?, view: View?, position: Int, id: Long) {
textView.text = data1[position]
}
override fun onNothingSelected(parent: AdapterView<*>?) {
}
}
3. 어댑터
안드로이드 os는 기본 스피너 레이아웃을 제공한다.
var adpater = ArrayAdapter(this, android.R.layout.simple_spinner_item, data1)
var adapter2 = ArrayAdapter(this, android.R.layout.simple_spinner_item, data2)
adpater.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item)
adapter2.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item)
spinner.adapter = adpater
spinner2.adapter = adapter2