我正在使用Saripaar验证库https://github.com/ragunathjawahar/android-saripaar来验证其中一个表单。 该库非常有用,因为它避免了许多用于验证表单的样板代码。 但是,该库在小部件上使用了通知。 以下是一个例子:
@Password(order = 1)
@TextRule(order = 2, minLength = 6, message = "Enter at least 6 characters.")
private EditText passwordEditText;
order属性是指定验证顺序的属性 发生。这是我的问题:message属性采用常量表达式。 我需要从字符串资源文件中设置它。因此,错误消息可以在以后进行国际化。我已在下面尝试过:
message = getResources().getString(R.string.err_msg)
但它似乎不起作用,因为它需要编译时常量。
任何人都可以帮我解决这个问题或指导我解决问题吗?
答案 0 :(得分:18)
使用以下语法:
//private variable in the class declaration section
private EditText txtFirstName=null;
@Required(order = 2, messageResId = R.string.err_required_field)
它位于lib的文档中(而lib本身就是一个很好的文档)。