MVVMRxJavaRetrofitSample icon indicating copy to clipboard operation
MVVMRxJavaRetrofitSample copied to clipboard

BindingAdapter参数

Open fishsoft opened this issue 7 years ago • 1 comments

看了你关于MVVM的博客:http://haohaochang.cn/2017/02/12/MVVM,RxJava和Retrofit的一次实践 有一点不太明白,@BindingAdapter({"app:imageUrl"})对应的是ui布局里面的app:imageUrl="@{viewModel.imageUrl}",@{viewModel.imageUrl}中的imageUrl是viewModel中的属性,但是我找了一下,貌似没有找到这个属性,还望不吝赐教,谢谢!!!!

fishsoft avatar Apr 28 '17 10:04 fishsoft

抱歉,刚看到你提出的 issue 。这里通过 BindingAdapter 将属性 app:imageUrl 与 loadImage 方法绑定ImageView 在加载图片时, 将会执行 MovieViewModel 中的 loadImage 方法,主要是通过 DataBinding 机制来实现的。

@BindingAdapter({"app:imageUrl"})
public static void loadImage(ImageView imageView,String url) {
    Glide.with(imageView.getContext())
            .load(url)
            .placeholder(R.drawable.cover)
            .error(R.drawable.cover)
            .into(imageView);

}

你可以参考 https://developer.android.com/topic/libraries/data-binding/index.html http://www.jianshu.com/p/c41e7a597ac8

githubhaohao avatar Jul 07 '17 01:07 githubhaohao