안녕하세요 초보 개발자입니다..
코틀린으로 안드로이드 앱을 만들고 있습니다.
리사이클러뷰에서 특정 아이템에 '좋아요'를 클릭하도록 하려고 합니다.
문제는, 좋아요를 클릭 후에 스크롤이 맨 위로 간다는 것입니다.
어댑터
class ItemAlbumCardAdapter : RecyclerView.Adapter<ItemAlbumCardAdapter.MainViewHolder>() {
inner class MainViewHolder(itemView : View) : RecyclerView.ViewHolder(itemView) {
<--변수 생략 -->
init {
// 아이템 클릭 이벤트 처리.
icLike.setOnClickListener {
val pos = adapterPosition
if(pos != RecyclerView.NO_POSITION) {
//setOnClickListener
likeEvent(pos)
}
notifyItemChanged(pos)
}
}
}
프래그먼트
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
<-- 코드 생략 -->
val itemAlbumCardAdapter: ItemAlbumCardAdapter = ItemAlbumCardAdapter()
//adapter 연결
itemAlbumCardAdapter.contents = contents!!
fragmentView?.useralbuminsidecard_rv?.adapter = itemAlbumCardAdapter
fragmentView?.useralbuminsidecard_rv?.layoutManager = LinearLayoutManager(activity!!)
return fragmentView
}
로그로 확인 해 보니, 아이템을 클릭할 때
프래그먼트 내에서 adapter를 또 다시 호출하던데
이로 인해서 스크롤이 맨 위로 올라가는 것 같습니다.
어떻게 해결할 수 있을까요?ㅜㅜㅜ
답변 부탁드리겠습니다..