Android入力バリデーター

検証
少し前まで、Androidアプリケーションに入力フィールド(EditText)のバリデーターを追加する必要がありましたが、ネットワーク上で適切なものは何もありませんでした。自分で作成する必要がありました。 すべてが準備できたので、Apacheライセンスの下で全員に結果を配布し、すべてがどのように機能するかについて少し話すことができます。 興味がある人 猫の下でお願いします。

すべてがゼロから書かれたため、自分でアーキテクチャを作成することが可能であったため、次のスキームが選択されました。

便宜上、いくつかのカスタマイズを行いました。

バリデータとチェッカーには基本的な抽象クラスがあり、これを実装することにより、コントロールと特別なチェック用のバリデータを取得できます。

チェックがあります:

コードでは、すべて次のようになります。
//   ValidationSummary summaryValidator_ = new ValidationSummary(getString(R.string.common_error_message), headerErrorMessage); //      EditTextValidator firstnameValidator = new EditTextValidator(); //  EditText  ,     (  ,     ) firstnameValidator.setViewToValidate(firstnameEdit, ValidationMode.Manual); // TextView       ,       firstnameValidator.setExternalErrorView( (TextView) findViewById(R.id.firstname_error_text)); //     firstnameValidator.addConditionChecker(new NotEmptyChecker( getString(R.string.name_required_error_message) )); //   firstnameValidator.addConditionChecker(new LengthChecker(1, 50, getString(R.string.firstname_error_message) )); //    summaryValidator_.addValidator(firstnameValidator); ... //     EditTextValidator confirmPasswordValidator = new EditTextValidator(); confirmPasswordValidator.setViewToValidate(confirmPasswordEdit, ValidationMode.Manual); confirmPasswordValidator.setExternalErrorView( (TextView) findViewById(R.id.confirm_password_error_text)); //    ,    - passwordEdit confirmPasswordValidator.addConditionChecker(new TextMatchChecker(getString(R.string.confirm_password_error_message), passwordEdit)); summaryValidator_.addValidator(confirmPasswordValidator); 


以下を呼び出すことにより、グループ内のすべてのバリデーターのチェックを開始できます。
 summaryValidator_.performCheck(); 


バリデーターに興味がある人は、このコードが書かれた壁の中で、 Rus WizardsGitHubからプロジェクトを取得することを勧めます。
そして、もちろん、提案、提案、ヒントは大歓迎です!

Source: https://habr.com/ru/post/J136267/


All Articles