Android数据绑定错误:执行失败java.lang.RuntimeException: [英] Android Data Binding Error:Execution failed java.lang.RuntimeException:
问题描述
http://www.mutualmobile.com/posts/using-data-binding-api-in-recyclerview
除了图像url绑定,一切都正常。我收到错误:
错误:执行失败的任务':app:compileDebugJavaWithJavac'。
java.lang.RuntimeException:Found数据绑定错误。
**** /数据绑定错误**** msg:找不到参数类型为java.lang.String的属性app.imageUrl的setter。文件:D:\Projects\app\src\main\res\layout\view_simple_item.xml loc:43:32 - 43:47 **** \数据绑定错误****
我的布局:
。 ..
< data>
< variable
name =item
type =com.example.Item/>
< / data>
...
< ImageView
android:id =@ + id / iv_item
app.imageUrl =@ {item.imageUrl}
... />
...
我的适配器:
package com.example.adapters;
import android.databinding.BindingAdapter;
import android.widget.ImageView;
import com.squareup.picasso.Picasso;
public class CustomBindingAdapter {
@BindingAdapter(bind:imageUrl)
public static void loadImage(ImageView imageView,String url){
Picasso.with(imageView .getContext())。load(url).into(imageView);
}
}
找到我的问题。而不是:
app.imageUrl =@ {item.imageUrl}
必须是:
app:imageUrl = @ {item.imageUrl}
I tried to do some analog of example from here: http://www.mutualmobile.com/posts/using-data-binding-api-in-recyclerview And everything works correct except image url binding. I received error: Error:Execution failed for task ':app:compileDebugJavaWithJavac'.
java.lang.RuntimeException: Found data binding errors. ****/ data binding error ****msg:Cannot find the setter for attribute 'app.imageUrl' with parameter type java.lang.String. file:D:\Projects\app\src\main\res\layout\view_simple_item.xml loc:43:32 - 43:47 ****\ data binding error ****
My Layout:
...
<data>
<variable
name="item"
type="com.example.Item" />
</data>
...
<ImageView
android:id="@+id/iv_item"
app.imageUrl="@{item.imageUrl}"
... />
...
My adapter:
package com.example.adapters;
import android.databinding.BindingAdapter;
import android.widget.ImageView;
import com.squareup.picasso.Picasso;
public class CustomBindingAdapter {
@BindingAdapter("bind:imageUrl")
public static void loadImage(ImageView imageView, String url) {
Picasso.with(imageView.getContext()).load(url).into(imageView);
}
}
Found my problem. Instead of:
app.imageUrl="@{item.imageUrl}"
Must be:
app:imageUrl="@{item.imageUrl}"
这篇关于Android数据绑定错误:执行失败java.lang.RuntimeException:的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!