gpt4 book ai didi

android - Kotlin - 如何为 RecyclerVIew 实现 ItemClickListener

转载 作者:行者123 更新时间:2023-11-29 16:58:01 25 4
gpt4 key购买 nike

既然 google 正式支持 Kotlin 作为 android 中的主要(或即将成为)语言,我正在尝试翻译我的一个项目。尽管 Android Studio 内置的“翻译器”工作得很好,但它显然无法为 RecyclerView

翻译 ItemClickListener

举个例子,这是我所拥有的:

在 Java 中,我使用 this class我在 GitHub 上找到了实现它的方法。

这是我的 Java 代码:

ItemClickSupport.addTo(recyclerView).setOnItemClickListener(new ItemClickSupport.OnItemClickListener() {
@Override
public void onItemClicked(RecyclerView recyclerView, int position, View v) {
...
});

如何在 Kotlin 中为 RecyclerView 设置 ItemClickListener?

最佳答案

实际上,您只需将该 Java 代码复制并粘贴到 Kotlin 文件中,您将获得使用内置转换器执行相同操作的 Kotlin 代码。

(您也可以使用 Ctrl+Alt+Shift+K 在 Windows 上,^⌥⇧K 在 Mac 上,或者从菜单中通过代码 -> 将 Java 文件转换为 Kotlin 文件。)

它给你的是以下内容:

ItemClickSupport.addTo(recyclerView).setOnItemClickListener { recyclerView, position, v ->
// ...
}

这利用了 SAM conversion ,相当于这种更长、更像 Java 的调用函数的形式:

ItemClickSupport.addTo(recyclerView).setOnItemClickListener(
object : ItemClickSupport.OnItemClickListener {
override fun onItemClicked(recyclerView: RecyclerView?, position: Int, v: View?) {
// ...
}
}
)

关于android - Kotlin - 如何为 RecyclerVIew 实现 ItemClickListener,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44076779/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com