작성
·
198
0
초보라서 정확한 상황을 설명할 순 없지만
이번 장 구현할 때 똑같이 구현했는데도 전 item.detail의 id들이 불러와지질 않습니다.
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.appcompat.view.menu.MenuView
import androidx.fragment.app.Fragment
import androidx.recyclerview.widget.RecyclerView
import com.bumptech.glide.Glide
import com.example.instagram.R
import com.example.instagram.navigation.model.ContentDTO
import com.google.firebase.firestore.FirebaseFirestore
class DetailViewFragment : Fragment() {
var firestore: FirebaseFirestore? = null
override fun onCreateView(
inflater: LayoutInflater,
container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
var view = LayoutInflater.from(activity).inflate(R.layout.fragment_detail, container, false)
firestore = FirebaseFirestore.getInstance()
return view
}
inner class DetailViewRecyclerViewAdapter : RecyclerView.Adapter<RecyclerView.ViewHolder>() {
var contentDTOs: ArrayList<ContentDTO> = arrayListOf()
var contentUidList: ArrayList<String> = arrayListOf()
init {
firestore?.collection("images")?.orderBy("timestamp")
?.addSnapshotListener { querySnapshot, firebaseFirestoreException ->
contentDTOs.clear()
contentUidList.clear()
for (snapshot in querySnapshot!!.documents) {
var item = snapshot.toObject(ContentDTO::class.java)
contentDTOs.add(item!!)
contentUidList.add(snapshot.id)
}
notifyDataSetChanged()
}
}
override fun onCreateViewHolder(p0: ViewGroup, p1: Int): RecyclerView.ViewHolder {
var view = LayoutInflater.from(p0.context).inflate(R.layout.item_detail, p0, false)
return CustomViewHolder(view)
}
inner class CustomViewHolder(view: View) : RecyclerView.ViewHolder(view)
override fun getItemCount(): Int {
return contentDTOs.size
}
override fun onBindViewHolder(p0: RecyclerView.ViewHolder, p1: Int) {
var viewholder = (p0 as CustomViewHolder).itemView
//Userid
viewholder.detale
Glide.with(p0.itemView.context).load(contentDTOs!![p1].imageUri).into(viewholder.deta)
}
}
}
답변 1
0
흠...
상단에
import kotlinx.android.synthetic.main.fragment_detail.view.*
import kotlinx.android.synthetic.main.item_detail.view.*
코드가 임포트가 안된듯 합니다.
최근 안드로이드에서 Kotlin extenstion을 deprecate 되었다고 하는데 그 부분의 영향인지 확인을 해봐야 겠네요