小编Rav*_*iya的帖子

如何在Android的ViewModel类DataBinding中获取R.string

我目前正在使用databinding我的Android应用程序项目.我想error在我的CustomTextViewfrom 上设置消息,R.string.txtOldPassWordError并从另一个叫做的类中设置它ViewModelClass.

这是我的XML代码

<com.horseproject.widget.CustomEditText
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="center_vertical"
    android:layout_marginTop="@dimen/dp_20"
    android:drawablePadding="@dimen/dp_10"
    android:hint="@string/enter_old_password"
    android:inputType="textPassword"
    android:lines="1"
    android:text="@={ChangePasswordVM.userOldPassword}"
    android:textColorHint="@color/gray_text"
    app:drawableLeftCompat="@drawable/ic_password_lock"
    app:drawableTintCompat="@color/gray_app"
    app:error="@{ChangePasswordVM.userOldPasswordError}" />
Run Code Online (Sandbox Code Playgroud)

这是ViewModelClass.java

public class ChangePasswordViewModel extends BaseObservable {

    public ObservableField<String> userOldPassword = new ObservableField<>("");

    public void userPasswordChange() {

        if ((TextUtils.isEmpty(userOldPassword.get()))) {
            userOldPasswordError.set("Please enter your old password");
            return;
        } else if (userOldPassword.get().length() <= 5) {
            userOldPasswordError.set("Password should contain minimum 6 characters");
            return;
        } else {
            userOldPasswordError.set(null);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这是来自的字符串 strings.xml

<string name="select">Please Enter …
Run Code Online (Sandbox Code Playgroud)

data-binding android textview

7
推荐指数
2
解决办法
8406
查看次数

标签 统计

android ×1

data-binding ×1

textview ×1