package Ġcom . library . common . view Ċ Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . Button Ċ import Ġandroid . widget . TextView Ċ import Ġcom . library . common . R Ċ Ċ /** Ċ Ġ* Ġ åıĺåĮĸ view çļĦ é»ĺè®¤ è¾ ħ åĬ© æİ§åĪ¶ ç±» Ċ Ġ* Ċ Ġ* Ġ@ author Ġyang bw Ċ Ġ* Ġ@ date Ġ 2 0 2 0 / 8 / 3 1 Ċ Ġ*/ Ċ class ĠV ary View Helper Controller Ġprivate Ġconstructor ( private Ġval Ġhelper : ĠV ary View Helper ) Ġ: ĊĠĠĠ ĠIV ary View Helper Controller Ġ{ ĊĊĠĠĠ Ġ// æĺ¯åĲ¦ å·²ç»ı è°ĥçĶ¨ è¿ĩ restore æĸ¹æ³ķ ĊĠĠĠ Ġprivate Ġvar Ġhas Restore : ĠBoolean Ġ= Ġfalse ĊĊĠĠĠ Ġconstructor ( replace View : ĠView ) Ġ: Ġthis ( ĊĠĠĠĠĠĠĠ ĠV ary View Helper ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreplace View ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġoverride Ġfun Ġshow Loading () Ġ{ ĊĠĠĠĠĠĠĠ Ġshow Loading ( null ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġshow Loading ( msg : ĠString ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġhas Restore Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġval Ġlayout Ġ= Ġhelper . inflate ( R . layout . page _ loading ) ĊĠĠĠĠĠĠĠ Ġmsg ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtv Msg Ġ= Ġlayout . findViewById < TextView >( R . id . tv _ msg ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv Msg . text Ġ= Ġit ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġhelper . show View ( layout ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġshow Empty ( listener : ĠView . OnClickListener ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġshow Empty ( null , Ġlistener ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġshow Empty ( empty Msg : ĠString ?, Ġlistener : ĠView . OnClickListener ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġhas Restore Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġval Ġlayout Ġ= Ġhelper . inflate ( R . layout . page _ empty ) ĊĠĠĠĠĠĠĠ Ġval Ġbtn Reload Ġ= Ġlayout . findViewById < Button >( R . id . btn _ reload ) ĊĠĠĠĠĠĠĠ Ġempty Msg ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtv Msg Ġ= Ġlayout . findViewById < TextView >( R . id . tv _ msg ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv Msg . text Ġ= Ġit ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ( null Ġ!= Ġlistener ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbtn Reload . setOnClickListener ( listener ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbtn Reload . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbtn Reload . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġhelper . show View ( layout ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġshow Error ( listener : ĠView . OnClickListener ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġshow Error ( null , Ġlistener ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġshow Error ( ĊĠĠĠĠĠĠĠ Ġmsg : ĠString ?, ĊĠĠĠĠĠĠĠ Ġlistener : ĠView . OnClickListener ? ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġhas Restore Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġval Ġlayout Ġ= Ġhelper . inflate ( R . layout . page _ error ) ĊĠĠĠĠĠĠĠ Ġval Ġbtn Reload Ġ= Ġlayout . findViewById < Button >( R . id . btn _ reload ) ĊĠĠĠĠĠĠĠ Ġmsg ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtv Msg Ġ= Ġlayout . findViewById < TextView >( R . id . tv _ msg ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv Msg . text Ġ= Ġit ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ( null Ġ!= Ġlistener ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbtn Reload . setOnClickListener ( listener ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbtn Reload . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbtn Reload . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġhelper . show View ( layout ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġshow Custom View ( ĊĠĠĠĠĠĠĠ Ġdrawable Int : ĠInt , ĊĠĠĠĠĠĠĠ Ġtitle : ĠString ?, ĊĠĠĠĠĠĠĠ Ġmsg : ĠString ?, ĊĠĠĠĠĠĠĠ Ġbtn Text : ĠString ?, ĊĠĠĠĠĠĠĠ Ġlistener : ĠView . OnClickListener ? ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġrestore () Ġ{ ĊĠĠĠĠĠĠĠ Ġhas Restore Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġhelper . restore View () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġval Ġis Has Restore : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġhas Restore Ċ Ċ }