I am using saripaar for form validation. I have some edittext in fragmentA, on validation success , view will be switched to fragmentB.
Butterknife and saripaar annotation in fragment.
@NotEmpty
@BindView(R.id.nameEditText)
lateinit var nameEditText: EditText
Saripaar initialization:
val validator = Validator(this)
validator.setValidationListener(this)
To validate the fields:
validator.validate()
验证第一次运行良好.当从FragmentB返回到Fragmenta时,验证不起作用,它将直接调用onvalidationSuccess.
On onValidationSucceeded , I am using following function to switch to fragmentB.
fun openFragment(fragment: Fragment) {
val ft = activity.supportFragmentManager.beginTransaction()
ft.replace(R.id.container, fragment)
ft.addToBackStack(null)
ft.commitAllowingStateLoss()
}
这个问题只出现在kotlin中,而不出现在java中.