【问题标题】:How to validate form ViewModel with MVVM Data binding in Android?如何在 Android 中使用 MVVM 数据绑定验证表单 ViewModel?
【发布时间】:2017-06-14 04:04:08
【问题描述】:

我正在尝试使用来自用户的混合数据类型输入来验证表单。 我还有可选/必填字段以及正则表达式验证。 我已经使用 MVVM 实现了 Android 数据绑定,因此我现在不能使用 saripar

我试过Kubwa,但我不能在那里使用重复的注释。 我也看过android-binding,但我无法实现这个库,而且他们也不再支持它了。 让我知道是否有人可以提出更好的方法。

【问题讨论】:

    标签: android validation mvvm data-binding formvalidation.io


    【解决方案1】:

    如果“重复注释”是指相同类型的多个(2 个或多个 @Email 验证) - 那么 Kubwa 将起作用。对于这种情况,所有注解都有一个.List 子注解:

    @NotNull.List({
        @NotNull(name = "streetError", errorMessage = R.string.streetError),
        @NotNull(name = "cityError", errorMessage = R.string.cityError),
        @NotNull(name = "countryError", errorMessage = R.string.countryError)
    })
    

    免责声明 - Kubwa 是我的图书馆 :)

    【讨论】:

    • 我真的很喜欢你的图书馆,但努力设置它却无济于事。你能帮帮我吗
    • @Pamparanpa - 你有什么问题?
    • @Boots 你在 Kotlin 中试过吗?它说“注释不能用作注释参数”
    • 已解决:内部NotNull注解必须不带@@NotNull.List( NotNull(name = "cardError", errorMessage = R.string.error_field_required), NotNull(name = "nameError", errorMessage = R.string.error_field_required), NotNull(name = "lastNameError", errorMessage = R.string.error_field_required) )
    • 我收到此错误:错误:错误的服务配置文件,或构造处理器对象时引发的异常:javax.annotation.processing.Processor:提供者 com.wesleyelliott.kubwa.KubwaCompiler 无法实例化: java.lang.NoClassDefFoundError: com/wesleyelliott/kubwa/rule/Rule
    猜你喜欢
    • 2017-11-28
    • 2023-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-27
    • 2017-11-17
    • 2018-05-17
    相关资源
    最近更新 更多