Utilisation de la liaison de données :
android:layout_marginTop="@{@dimen/uno + @dimen/dos}"
Les adaptateurs de marges IFAIK ne sont pas fournis par le sdk. Vous devrez le définir vous-même :
@BindingAdapter("android:layout_marginTop")
public static void setBottomMargin(View view, int bottomMargin) {
ViewGroup.MarginLayoutParams layoutParams = (ViewGroup.MarginLayoutParams) view.getLayoutParams();
layoutParams.setMargins(layoutParams.leftMargin, layoutParams.topMargin,
layoutParams.rightMargin, bottomMargin);
view.setLayoutParams(layoutParams);
}
Assurez-vous que la liaison de données est activée pour votre projet :
dataBinding {
enabled = true
}
dans votre build.gradle .
Le document de liaison de données vaut la peine d'être lu.