작성
·
422
1
여태까지 잘 따라왔었는데
갑자기 헛웃음이 나올정도로 어렵네요 ㅋㅋㅋ
설명도 너무 짧고 빠르고 진짜 하나도 이해가 안되는데
그래도 뭐 문법이 원래 저렇게 생긴거려니 하면서
일단 따라서 코드만 타이핑 하면 어떻게든 되겠지하면서
따라 했더니 에러나고.. 멘붕이 왔는데요 ㅎㅎ
package com.bikmim.listview_ex
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.BaseAdapter
class ListViewAdapter(val List : MutableList<String>) : BaseAdapter() {
override fun getCount(): Int {
return List.size
}
override fun getItem(p0: Int): Any {
return List[position]
}
override fun getItemId(p0: Int): Long {
return position.toLong()
}
override fun getView(p0: Int, p1: View?, p2: ViewGroup?): View {
var converView = convertView
if(converView == null){
converView = LayoutInflater.from(parent?.context).inflate(R.layout.listview_item, parent, false)
}
return converView!!
}
}
에러는 이렇게 났어요.
e: D:\Android-Studio-Works\listView_ex\app\src\main\java\com\bikmim\listview_ex\ListViewAdapter.kt: (14, 21): Unresolved reference: position
일단 마음을 다 잡고,
동영상 2번째 시청 해 보고
구글링도 한번 해 보겠습니다. ㅠㅠ
답변 3
0
0
override fun getItemId(p0: Int): Long {
return position.toLong()
}
이 부분도 p0 -> position으로 변경해주셔야 합니다~
0
안녕하세요?
override fun getItem(p0: Int): Any {
return List[position]
}
이 부분에 오타가 있는 것 같습니다
p0 -> position 으로 변경해주셔야 합니다.
제가 첨부드린 코드와 한번 비교해서 살펴보시곘어요?
코드 파일 위치를 잘 모르시면 아래 글 참고해주세요~
https://www.inflearn.com/questions/259599
네 맞습니다. 버전 혹은 OS(윈도우 /맥)의 차이입니다.
p0 <-> position 둘 중 하나로 통일해서 사용해주시면 됩니다.