我对Android和Kotlin都是新手(来自iOS Swift development)。我有一个活动有一个片段,片段内是一个RecyclerView。当用户点击RecyclerView中的一行时,我想显示一个对话框并采取一些措施。
在适配器中,我有CustomViewHolder和onClickListener。从那里,我可以轻松捕获用户点击的行。但是,我如何将这些信息传递回片段,以便采取行动/显示对话框?
谢谢
让适配器将lambda作为参数。。。例如
class YourAdapter(val listener: (YourDataType) -> Unit)
在视图持有者中,当用户单击行时,您将调用该侦听器。
holder.itemView.setOnClickListener { listener(data) }
在你的片段中,你会有如下内容:
yourAdapter = YourAdapter { // invoked when user clicks on row }