android - 无法为RecyclerView的DividerItemDecoration设置Custom Drawable

标签 android kotlin android-recyclerview

我有一个RecyclerView水平显示项目,我想在每个项目之间添加间距(但不要在开始或结束处)。我找到了this,并且还查看了官方文档中的示例,即使我使用var声明了变量,也遇到了以下错误:
enter image description here
我已将回收站 View 配置如下:

myRecyclerView.apply {
  layoutManager = myLayoutManager
  adapter = myAdapter(data)
  addItemDecoration(divider)
}
当我删除设置自定义可绘制对象的行时,它将编译并运行。
为什么会出现此错误?如何设置自定义可绘制对象?

最佳答案

这是因为在DividerItemDecoration

public void setDrawable(@NonNull Drawable drawable) 
@Nullable public Drawable getDrawable() 
这意味着setter方法接受Drawable,而getter返回Drawable?。由于它们不匹配,因此您必须直接使用setter:
divider.setDrawable(..)

关于android - 无法为RecyclerView的DividerItemDecoration设置Custom Drawable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63552245/

相关文章:

java - Android:Fragment 中的 Setter 和 RecyclerViewAdapter 中的获取字符串

android - 三星 S8 中的回收器 View 不显示项目

android - 哪些工具和技术用于将视频从Youtube App转换到Smart TV?

java - 如何以编程方式绘制嵌套圆

android - 如何使用自定义适配器将数组中的值设置为 ListView 并为行赋予不同的颜色

Android Geocoder 不检测高速公路/州际公路?

gradle - Gradle 项目中的 .kts 脚本

android - 使用 Android Keystore 的 Spongy CaSTLe RSA 加密/解密

java - 更新 recyclerview 中的特定项目

oracle - 在 Spring Data Repository 中刷新 Oracle Materialized View