package Ġcom . si hai wan li an . base lib . mvp Ċ Ċ import Ġandroid . support . annotation . Color Res Ċ import Ġandroid . support . annotation . Drawable Res Ċ import Ġandroid . support . annotation . Layout Res Ċ import Ġandroid . support . annotation . String Res Ċ import Ġandroid . support . v 4 . content . Context Compat Ċ import Ġandroid . support . v 7 . widget . Toolbar Ċ import Ġandroid . view . Menu Ċ import Ġandroid . view . MenuItem Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . Frame Layout Ċ import Ġandroid . widget . TextView Ċ import Ġcom . ex mp le . core lib . R Ċ import Ġcom . ex mp le . core lib . mvp . Base M vp Activity Ċ import Ġcom . ex mp le . core lib . mvp . IT op Presenter Ċ import Ġcom . ex mp le . core lib . mvp . IT op View Ċ import Ġkotlinx . android . synt hetic . main . activ ti y _ base _ title .* ĊĊ Ċ /** Ċ Ġ* Ġ æīĢæľī æłĩé¢ĺ çļĦ activity çļĦ çĪ¶ ç±» Ċ Ġ* Ġåľ¨ è¿ĻéĩĮ ä¸»è¦ģ ç»Łä¸Ģ å¤ĦçĲĨ æłĩé¢ĺ Ċ Ġ* ĠCreated Ġby Ġm ou Ġon Ġ 2 0 1 6 / 7 / 1 3 . Ċ Ġ*/ Ċ abstract Ġclass ĠBase M vp Title Activity < V Ġ: ĠI Top View , ĠP Ġ: ĠI Top Presenter > Ġ: ĠBase M vp Activity < V , ĠP >() Ġ{ ĊĠĠĠ Ġprivate Ġvar Ġright Menu Texts : ĠString ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġvar Ġright Menu Icons : ĠInt ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġvar Ġtitle Tv : ĠTextView ? Ġ= Ġnull ĊĠĠĠ Ġ@ Layout Res ĊĠĠĠ Ġprotected Ġabstract Ġfun Ġchild View (): ĠInt ĊĊĠĠĠ Ġoverride Ġfun Ġget ContentView () Ġ= ĠR . layout . activ ti y _ base _ title ĊĠĠĠ Ġoverride Ġfun Ġinit View () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcontainer Ġ= Ġthis . findViewById < Frame Layout >( R . id . base _ container ) ĊĠĠĠĠĠĠĠ Ġcontainer . addView ( layout Inflater . inflate ( child View (), Ġnull )) ĊĠĠĠĠĠĠĠ Ġval Ġtoolbar Ġ= Ġthis . findViewById < Toolbar >( R . id . base _ toolbar ) ĊĠĠĠĠĠĠĠ Ġtitle Tv Ġ= Ġthis . findViewById ( R . id . base _ title _ tv ) ĊĠĠĠĠĠĠĠ Ġtoolbar . title Ġ= Ġ"" ĊĠĠĠĠĠĠĠ Ġset Support ActionBar ( toolbar ) ĊĠĠĠĠĠĠĠ Ġif Ġ( has Back Icon ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġiv _ back . setOnClickListener Ġ{ Ġfinish () Ġ} Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġtoolbar . set Navigation Icon ( R . drawable . return _ icon ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġtoolbar . set Navigation OnClickListener Ġ{ Ġfinish () Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġopen Ġfun Ġhas Back Icon () Ġ= Ġtrue ĊĠĠĠ Ġoverride Ġfun ĠonCreate Options Menu ( menu : ĠMenu ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġright Menu Icons ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġitem Ġ= Ġmenu . add ( 0 , Ġ 0 , Ġ 0 , Ġ"") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġitem . icon Ġ= ĠContext Compat . get Drawable ( this , Ġit ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġitem . set Show As Action ( Menu . FLAG _ ALWAYS _ PER FORM _ CLOSE ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġright Menu Texts ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġitem Ġ= Ġmenu . add ( 0 , Ġ 0 , Ġ 0 , Ġ"") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġitem . title Ġ= Ġit ĊĠĠĠĠĠĠĠĠĠĠĠ Ġitem . set Show As Action ( Menu . FLAG _ ALWAYS _ PER FORM _ CLOSE ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Options ItemSelected ( item : ĠMenuItem ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġon Right Menu Click ( item . itemId ) ĊĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġè®¾ç½® toolbar åı³ è¾¹ çļĦ æĸĩåŃĹ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Right Menu Texts ( right Menu Text : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . right Menu Texts Ġ= Ġright Menu Text ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġè®¾ç½® toolbar åı³ è¾¹ çļĦ icon ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Right Menu Icons (@ Drawable Res Ġright Icon Res Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . right Menu Icons Ġ= Ġright Icon Res Id ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġå½ĵ toolbar åı³ è¾¹ çļĦ icon ï¼Į è¢« çĤ¹åĩ» ï¼Į æķ°æį® 0 , 1 , 2 , 3 ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġopen Ġfun Ġon Right Menu Click ( itemId : ĠInt ) Ġ{ ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġè®¾ç½® ä¸ŃéĹ´ çļĦ title ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprotected Ġfun Ġset Activity Title (@ String Res Ġstr Res Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtitle Tv ?. setText ( str Res Id ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġfun Ġset Activity Title ( text : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtitle Tv ?. text Ġ= Ġtext ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġè®¾ç½® ä¸ŃéĹ´ title çļĦ é¢ľèī² ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Activity Title Color (@ Color Res Ġcolor Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtitle Tv ?. setTextColor ( resources . getColor ( color Id )) ĊĠĠĠ Ġ} Ċ } Ċ