package Ġdev . ent ao . kan . page Ċ Ċ import Ġandroid . view . ViewGroup Ċ import Ġdev . ent ao . kan . base . getValue Ċ import Ġdev . ent ao . kan . base . label Prop _ Ċ import Ġdev . ent ao . kan . base . name Prop Ċ import Ġkotlin . reflect . K Property Ċ import Ġkotlin . reflect . K Property 0 Ċ Ċ /** Ċ Ġ* ĠCreated Ġby Ġent ao yang @ 1 6 3 . com Ġon Ġ 2 0 1 8 - 0 3 - 3 0 . Ċ Ġ*/ Ċ class ĠInput Option Ġ{ Ċ ĉ var Ġkey : String Ġ= Ġ"" Ċ ĉ var ĠmarginTop : Int Ġ= Ġ 1 0 Ċ ĉ var ĠmarginLeft : Int Ġ= Ġ 0 Ċ ĉ var ĠmarginRight : Int Ġ= Ġ 0 Ċ ĉ var ĠmarginBottom : Int Ġ= Ġ 0 Ċ ĉ var Ġhint : String Ġ= Ġ"" Ċ ĉ var Ġvalue : String Ġ= Ġ"" Ċ ĉ var Ġheight : Int Ġ= ĠViewGroup . LayoutParams . WRAP _ CONTENT Ċ ĉ var Ġinput Valid Ġ= ĠInput Valid () ĊĊ ĉ var Ġprop : ĠK Property < *> ? Ġ= Ġnull ĊĊ ĉ fun Ġvalid ( block : ĠInput Valid . ()-> Unit ) Ġ{ Ċĉ ĉ this . input Valid . block () Ċ ĉ } ĊĊ ĉ fun Ġprop ( p : ĠK Property <* >) Ġ{ Ċĉ ĉ this . prop Ġ= Ġp Ċĉ ĉ this . key Ġ= Ġp . name Prop Ċĉ ĉ this . hint Ġ= Ġp . label Prop _ Ċĉ ĉ if Ġ( p Ġis ĠK Property 0 <* >) Ġ{ Ċĉĉ ĉ value Ġ= Ġp . getValue ()?. toString () Ġ?: Ġ"" Ċĉ ĉ } Ċ ĉ } Ċ Ċ }