cha*_*ser 31 android 2-way-object-databinding android-databinding
这必须是最基本的问题,但经过一整天的阅读教程和文档后,我似乎无法理解在哪里放这些方法.没有一个指南提到放置这个东西的地方,只是提到在静态方法上使用注释.什么静态方法?任何静态方法都可以,无论什么类?什么是好习惯?创建一个CustomBinding类来托管所有这些静态方法?
只要我有方法有一个BindingAdapter注释,第一个参数是一个View,它会起作用吗?
我假设如果第一个参数是View类型我可以将绑定属性放在任何类型的视图上,它会触发方法吗?因此,如果我有特定的视图说EditText,这是否意味着只有在布局文件的EditText视图中找到属性时才调用该方法?
你把它放在你的模型类中。
例子:
XML:
<data>
<variable
name="item"
type="com.yourpackage.Model"/>
</data>
......
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@{item.resId}"/>
Run Code Online (Sandbox Code Playgroud)
模型:
public class Model {
@DrawableRes
private final int resId;
public Model(int resId) {
this.resId = resId;
}
public int getResId() {
return resId;
}
@BindingAdapter ("android:src")
public static void setImageResource(ImageView imageView, int resource){
imageView.setImageResource(resource);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7029 次 |
| 最近记录: |