package Ġcom . example . permission forge Ċ Ċ import Ġandroid . graphics . Color Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . text . Html Ċ import Ġandroid . widget . Text Clock Ċ import Ġandroid . widget . TextView Ċ import Ġjava . util .* Ċ Ċ class ĠSimulation Activity Ġ: ĠAppCompatActivity () Ġ{ ĊĊĠĠĠ Ġ// Ġinit Ġand Ġde - init ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġhide Title Bar () ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ simulation ) ĊĠĠĠĠĠĠĠ Ġinit UI () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit UI (){ ĊĊĠĠĠĠĠĠĠ Ġ// Ġinit Ġclock ĊĊĠĠĠĠĠĠĠ Ġval Ġclock Ġ= ĠfindViewById < Text Clock >( R . id . txt clk ) ĊĠĠĠĠĠĠĠ Ġclock . setTextColor ( Color . WHITE ) ĊĠĠĠĠĠĠĠ Ġclock . format 2 4 Hour Ġ= Ġ" å½ĵåīį æĹ¶éĹ´ : yyyy - MM - dd ĠHH : mm : ss " ĊĠĠĠĠĠĠĠ Ġclock . format 1 2 Hour Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġ// Ġinit Ġtext ĊĊĠĠĠĠĠĠĠ Ġval Ġdur Ġ= Ġintent . getString Extra ( R . id . field æĹ¶ éķ¿ . toString ()) ?. toInt OrNull () Ġ?: Ġ 3 ĊĠĠĠĠĠĠĠ Ġval ĠstartTime Ġ= ĠCalendar . getInstance () ĊĠĠĠĠĠĠĠ Ġval ĠendTime Ġ= ĠCalendar . getInstance () ĊĠĠĠĠĠĠĠ ĠendTime . add ( Calendar . HOUR , dur ) ĊĊĠĠĠĠĠĠĠ Ġval ĠstartTime Str Ġ= Ġ Ġ"${ startTime . get ( Calendar . MONTH )+ 1 }-${ startTime . get ( Calendar . DAY _ OF _ MONTH )} Ġ${ startTime . get ( Calendar . HOUR _ OF _ DAY )} : 0 0 " ĊĠĠĠĠĠĠĠ Ġval ĠendTime Str Ġ= Ġ"${ endTime . get ( Calendar . MONTH )+ 1 }-${ endTime . get ( Calendar . DAY _ OF _ MONTH )} Ġ${ endTime . get ( Calendar . HOUR _ OF _ DAY )} : 0 0 " ĊĊĠĠĠĠĠĠĠ Ġval Ġtel Ġ= Ġ" 1 8 ${ rand d ()} ${ rand d ()} ${ rand d ()} ${ rand d ()} ${ rand d ()} ${ rand d ()} ${ rand d ()} ${ rand d ()} ${ rand d () }" ĊĊĠĠĠĠĠĠĠ Ġval Ġreason Ġ= Ġintent . getString Extra ( R . id . field åİŁåĽł . toString ()) !! ĊĠĠĠĠĠĠĠ Ġval Ġlocation Ġ= Ġintent . getString Extra ( R . id . field åľ° çĤ¹ . toString ()) !! ĊĠĠĠĠĠĠĠ Ġval Ġname Ġ= Ġintent . getString Extra ( R . id . field è¯· åģĩ äºº . toString ()) !! ĊĠĠĠĠĠĠĠ Ġval Ġteacher Name Ġ= Ġintent . getString Extra ( R . id . field è¾ ħ å¯¼ åĳĺ . toString ()) !! ĊĊĠĠĠĠĠĠĠ Ġval Ġtext Ġ= Ġt _ fld (" è¯· åģĩ ç±»åŀĭ ï¼ļ ") + t _ val (" äºĭ åģĩ ãĢĢãĢĢãĢĢãĢĢ ãĢĢ ") Ġ+ t _ fld (" éľĢè¦ģ ç¦» æł¡ ï¼ļ ") + t _ val (" ç¦» æł¡ ") + nl + ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġt _ fld (" éĶĢ åģĩ è§ĦåĪĻ ï¼ļ ") + t _ emp (" ç¦» æł¡ è¯· åģĩ éľĢè¦ģ éĶĢ åģĩ ï¼Į éĿŀ ç¦» æł¡ è¯· åģĩ æĹł éľĢ éĶĢ åģĩ ") + nl + ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġt _ fld (" å®ŀéĻħ ä¼ ĳ åģĩ æĹ¶éĹ´ ï¼ļ ") Ġ+ Ġt _ val ("$ startTime Str Ġ~ Ġ$ endTime Str Ġï¼Ī åħ± Ġ$ dur Ġå°ı æĹ¶ ï¼ī ") ĊĠĠĠĠĠĠĠ Ġfind TextView ( R . id . txt _ top ). text Ġ= ĠHtml . from Html ( text ) ĊĊĊĠĠĠĠĠĠĠ Ġval Ġtext 2 Ġ= Ġt _ fld (" å¼Ģå§ĭ æĹ¶éĹ´ ï¼ļ ãĢĢ Ġ" )+ t _ val ( startTime Str )+ nl + ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġt _ fld (" ç»ĵæĿŁ æĹ¶éĹ´ ï¼ļ ãĢĢ Ġ" )+ t _ val ( endTime Str )+ nl + ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġt _ fld (" å®¡ æī¹ æµģç¨ĭ ï¼ļ ãĢĢ Ġ" )+ t _ val (" åħ± 1 æŃ¥ Ġ") Ġ+ Ġt _ lnk (" æŁ¥çľĭ >") + nl + ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġt _ fld (" ç´ § æĢ ¥ èģĶç³» äºº ï¼ļ Ġ" )+ t _ val ( tel )+ nl + ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġt _ fld (" è¯· åģĩ åİŁåĽł ï¼ļ ãĢĢ Ġ" )+ t _ val ( reason )+ nl + ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġt _ fld (" åıĳ èµ· ä½įç½® ï¼ļ ãĢĢ Ġ" )+ t _ lnk ( location )+ nl + ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġt _ fld (" æĬ Ħ éĢģ äºº ï¼ļ ãĢĢãĢĢ Ġ" )+ t _ val (" æĹł ") ĊĠĠĠĠĠĠĠ Ġfind TextView ( R . id . txt _ mid ). text Ġ= Ġ ĠHtml . from Html ( text 2 ) ĊĠĠĠĠĠĠĠ Ġfind TextView ( R . id . txt _ init iate ). text Ġ= ĠHtml . from Html ( t _ fld ("$ name Ġ- Ġåıĳ èµ· çĶ³è¯· ")) ĊĠĠĠĠĠĠĠ Ġfind TextView ( R . id . txt _ passed ). text Ġ= ĠHtml . from Html ( t _ fld (" ä¸Ģ çº§ ï¼ļ[ è¾ ħ å¯¼ åĳĺ ]$ teacher Name Ġ- Ġ å®¡ æī¹ éĢļè¿ĩ ")) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// region Ġ ä»£çłģ ç² ª åĿ ĳ ĊĠĠĠ Ġfun Ġfind TextView ( id : Int ) Ġ: ĠTextView { ĊĠĠĠĠĠĠĠ Ġreturn Ġ ĠfindViewById < TextView >( id ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval ĠCOLOR _ FIELD Ġ= Ġ"# 7 8 7 8 7 8 " ĊĠĠĠĠĠ Ġval ĠCOLOR _ VALUE Ġ= Ġ"# 0 0 0 0 0 0 " ĊĠĠĠĠĠ Ġval ĠCOLOR _ LINK Ġ= Ġ"# 9 7 cb fa " ĊĠĠĠĠĠ Ġval ĠCOLOR _ EMP HAS IS Ġ= Ġ"# fb cc 4 2 " ĊĠĠĠĠĠ Ġval ĠCOLOR _ OK Ġ= Ġ"# 0 4 d 3 5 1 " ĊĠĠĠĠĠ Ġval ĠCOLOR _ WHITE Ġ= Ġ"# ffffff " ĊĊĠĠĠ Ġprivate Ġfun Ġcolored Text ( color : ĠString , Ġstr : ĠString ) Ġ: ĠString { ĊĠĠĠĠĠĠĠ Ġreturn Ġ"< font Ġcolor =$ color >$ str </ font >" ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġt _ fld ( str : ĠString ) Ġ: ĠString { ĊĠĠĠĠĠĠĠ Ġreturn Ġcolored Text ( COLOR _ FIELD , Ġstr ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġt _ val ( str : ĠString ) Ġ: ĠString { ĊĠĠĠĠĠĠĠ Ġreturn Ġcolored Text ( COLOR _ VALUE , Ġstr ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġt _ lnk ( str : ĠString ) Ġ: ĠString { ĊĠĠĠĠĠĠĠ Ġreturn Ġcolored Text ( COLOR _ LINK , Ġstr ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġt _ emp ( str : ĠString ) Ġ: ĠString { ĊĠĠĠĠĠĠĠ Ġreturn Ġcolored Text ( COLOR _ EMP HAS IS , Ġstr ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġt _ ok ( str : ĠString ) Ġ: ĠString { ĊĠĠĠĠĠĠĠ Ġreturn Ġcolored Text ( COLOR _ OK , Ġstr ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġt _ white ( str : ĠString ) Ġ: ĠString { ĊĠĠĠĠĠĠĠ Ġreturn Ġcolored Text ( COLOR _ WHITE , Ġstr ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġrand d () Ġ: ĠInt { ĊĠĠĠĠĠĠĠ Ġreturn Ġ( 0 .. 9 ). random () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġnl Ġ= Ġ"< br /> " ĊĠĠĠ Ġ// endregion Ċ }