Saripaar 表单验证在 kotlin 中第二次不起作用



我正在使用saripaar进行表单验证。我在片段A中有一些编辑文本,验证成功后,视图将切换到片段B。
片中的黄油刀和萨里帕注释。

@NotEmpty
@BindView(R.id.nameEditText)
lateinit var nameEditText: EditText

萨里帕尔初始化:

 val validator = Validator(this)
 validator.setValidationListener(this)

要验证字段,请执行以下操作:

validator.validate()

验证首次工作正常。当从片段 B 返回到片段 A 时,验证不起作用,它将直接调用 onvalidationsuccess。

验证成功时,我使用以下函数切换到片段B。

fun openFragment(fragment: Fragment) {
    val ft = activity.supportFragmentManager.beginTransaction()
    ft.replace(R.id.container, fragment)
    ft.addToBackStack(null)
    ft.commitAllowingStateLoss()
}

这个问题只出现在 kotlin 中,而不是在 java 中。

我解决了这个问题,我在基本片段中进行了所有 saripaar 初始化,我在基本片段中有以下代码,并对验证器实例进行了空检查:

if(validator==null){  
 validator = Validator(this) 
 validator.setValidationListener(this) 
}

当我删除空检查部分时,现在它可以正常工作。

validator = Validator(this) 
validator.setValidationListener(this) 

相关内容

  • 没有找到相关文章

最新更新