Android数据绑定错误:执行失败java.lang.RuntimeException: [英] Android Data Binding Error:Execution failed java.lang.RuntimeException:

查看:2108
本文介绍了Android数据绑定错误:执行失败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屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆