我想在我的xml代码中数据绑定layout_marginBottom。并使用Observable变量将此绑定链接到代码中。
我试图将databind放在我的视图中:
android:layout_marginBottom="@{viewModel.marginBottom}"
然后在我的代码中有:
public final ObservableFloat marginBottom = new ObservableFloat(0);
但是这不会编译,错误信息是:
Error:(12, 36) Cannot find the setter for attribute 'android:layout_marginBottom' with parameter type float on com.example.customView.
我也尝试使用ObservableInt但类似的错误消息。也许我必须以某种方式将int转换为dp?这可能吗?我如何使这项工作?
答案 0 :(得分:0)
您不应该通过数据绑定来控制布局。但是如果你真的想这样做,那么为边距写@BindingAdapter
就可以了,这可以修改LayoutParams
的{{1}}。
View