package Ġid . riz ma ul ana . she en validator sample Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . support . design . widget . TextInput EditText Ċ import Ġandroid . support . v 7 . app . AppCompatActivity Ċ import Ġandroid . widget . Toast Ċ import Ġid . riz ma ul ana . she en validator . an ot ation . Register Validation Ċ import Ġid . riz ma ul ana . she en validator . an ot ation . Validation Binder Ċ import Ġid . riz ma ul ana . she en validator . lib . She en Validator Ċ import Ġid . riz ma ul ana . she en validator . utils . Validation Type Ċ import Ġkotlinx . android . synt hetic . main . activity _ she en _ validator _ annotation .* ĊĊ Ċ class ĠShe en Validator Annotation Activity Ġ: ĠAppCompatActivity () Ġ{ ĊĊĊĠĠĠ Ġlateinit Ġvar Ġshe en Validator : ĠShe en Validator ĊĊĠĠĠ Ġ@ Register Validation ( Validation Type . REQUIRED , ĠValidation Type . EMAIL ) ĊĠĠĠ Ġlateinit Ġvar Ġtxt Username : ĠText Input EditText ĊĠĠĠ Ġ@ Register Validation ( Validation Type . REQUIRED ) ĊĠĠĠ Ġlateinit Ġvar Ġtxt Password : ĠText Input EditText ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ she en _ validator _ annotation ) ĊĊĠĠĠĠĠĠĠ Ġtxt Username Ġ= ĠfindViewById ( R . id . txt _ email ) ĊĠĠĠĠĠĠĠ Ġtxt Password Ġ= ĠfindViewById ( R . id . txt _ password ) ĊĊĠĠĠĠĠĠĠ Ġshe en Validator Ġ= ĠShe en Validator ( this ) ĊĠĠĠĠĠĠĠ Ġshe en Validator . setOn Validator Listener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtil _ email . error Ġ= Ġ"" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtil _ password . error Ġ= Ġ"" ĊĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( this @ She en Validator Annotation Activity , Ġ" Your Ġform Ġis Ġvalid , Ġgood Ġjob !", ĠToast . LENGTH _ SHORT ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. show () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġshe en Validator . setOn Error Validator Listener Ġ{ Ġlist Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlist . forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( it . first . id ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . txt _ email Ġ-> Ġtil _ email . error Ġ= Ġ" O ops ! ... Ġlooks Ġlike Ġyour ĠEmail Ġis Ġnot Ġvalid " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . txt _ password Ġ-> Ġtil _ password . error Ġ= Ġ" H mm ... Ġpassword Ġis Ġrequired " ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠValidation Binder . bind Validator ( she en Validator , Ġthis ) ĊĊĠĠĠĠĠĠĠ Ġbtn _ login . setOnClickListener Ġ{ Ġshe en Validator . validate () Ġ} ĊĊĠĠĠ Ġ} Ċ } Ċ