Я показываю список включаемых элементов
<include
layout="@layout/item_tags"
android:title='@{"text"}'
android:image='@{"@drawable/ic_write_item.xml"}'/>
этот макет содержит
<layout xmlns:android="http://schemas.android.com/apk/res/android">
<data>
<variable
name="title"
type="java.lang.String" />
<variable
name="image"
type="java.lang.String" />
</data>
...
<ImageView...
android:src="@{image}"/>
<TextView...
android:text="@{title}" />
также создан myDatabindingAdapter
object DataBindingAdapters {
@BindingAdapter("android:src")
@JvmStatic
fun setImageUri(view: ImageView, imageUri: Uri) {
view.setImageURI(imageUri)
}
@BindingAdapter("android:src")
@JvmStatic
fun setImageDrawable(view: ImageView, drawable: Drawable) {
view.setImageDrawable(drawable)
}
@BindingAdapter("android:src")
@JvmStatic
fun setImageResource(imageView: ImageView, resource: Int) {
imageView.setImageResource(resource)
}
}
и инициализируется во фрагменте таким образом
val binding: FragmentTagsBinding = DataBindingUtil.inflate(inflater,R.layout.fragment_tags, container,false)
return binding.root
Когда я запускаю его, я получаю следующую ошибку:
E / BitmapFactory: невозможно декодировать поток: java.io.FileNotFoundException: @ drawable / ic_write_item.xml (нет такого файла или каталога) W / ImageView: resolUri не удалось на неверном растровом изображении uri: @ drawable / ic_write_item.xml
Это проблема?с адаптером?я должен отправить ресурс id
вместо имени файла?
Спасибо за любую помощь.