작성
·
140
0
firebase 데이터 불러오기에서 날짜가 안 떠요
분명 데이터는 date, memo 따로 잘 입력이 되는데
출력을 하면 아래와 같이 됩니다..
혹시 뭐가 문제일까요?
[입력]
[출력]
[Adapter 코드]
package com.sunny.diet_memo
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.BaseAdapter
import android.widget.TextView
class ListViewAdapter(val List : MutableList<DataModel>) : BaseAdapter(){
override fun getCount(): Int {
return List.size
}
override fun getItem(position: Int): Any {
return List[position]
}
override fun getItemId(position: Int): Long {
return position.toLong()
}
override fun getView(position: Int, convertView: View?, parent: ViewGroup?): View {
var convertView =convertView
if(convertView == null){
convertView = LayoutInflater.from(parent?.context).inflate(R.layout.listview_item, parent, false)
}
val date = convertView?.findViewById<TextView>(R.id. listViewDateArea)
val memo = convertView?.findViewById<TextView>(R.id. listViewMemoArea)
date!!.text = List[position].date
date!!.text = List[position].memo
return convertView!!
}
}
답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
tn320님의 질문에 대해, 전체적인 문제 상황을 고려했을 때, Firebase 리얼타임 데이터베이스에서 데이터를 불러오는 과정에 문제가 있음을 인지하셨고, 구체적으로 날짜 데이터가 앱 화면에 표시되지 않는 문제를 겪고 계신 것 같습니다. 여기서 주목해야 할 부분은 데이터는 잘 불러오나 “날짜”가 앱 화면에 보이지 않는 점입니다.
이와 유사한 문제를 경험하신 다른 수강생의 경우도 있었으며, 해당 내용에 대한 답변이 이미 제공되어 있습니다. 가장 일반적인 원인은 Adapter의 구현 또는 데이터 바인딩 부분에 있을 수 있습니다. 예를 들어, Adapter 내 getView()
메소드에서 데이터를 화면에 바인딩하는 로직에 오류가 있는 경우 이런 문제가 발생할 수 있습니다.
질문자님이 공유하신 코드로 미루어 보았을 때, Adapter 코드의 getView()
메소드 내에서 실수가 발생했을 가능성이 있습니다. 코드에서 date!!.text = List[position].date
와 date!!.text = List[position].memo
라고 날짜를 두 번 설정하는 부분이 있는데, 이 부분이 실제로 의도하셨던 것인지 다시 한번 검토가 필요합니다. 아마도 첫 번째 date!!.text
는 date
로, 두 번째는 memo
로 설정하려는 의도였을 것 같은데, 실수로 두 번째 줄도 동일하게 date
로 설정하셨을 수 있습니다.
유사한 문제에 대한 답변을 찾으시려면 다음 연관 질문을 참고하시길 바랍니다:
더욱 구체적인 해결책을 위해서는 Adapter 코드에서의 데이터 바인딩 부분을 중점적으로 검토하시고, 실제로 화면에 데이터를 표시하는 로직이 의도대로 작동하는지 확인해보시기 바랍니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
아! 강의를 다시보니 강사님께서 수정하신 걸 놓쳤네요
감사합니다! 🙂