package Ġcom . cn 2 9 . aac . ui . view pager Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . Button Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . lifecycle . Observer Ċ import Ġcom . cn 2 9 . aac . R Ċ import Ġcom . cn 2 9 . aac . ui . view pager . vm . Pager Agent ViewModel Ċ import Ġdagger . android . support . D agger Fragment Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠBl ank Fragment A Ġ: ĠD agger Fragment () Ġ{ ĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġlateinit Ġvar Ġpager Agent ViewModel : ĠP ager Agent ViewModel ĊĠĠĠ Ġprivate Ġvar ĠtextView : ĠTextView ? Ġ= Ġnull ĊĠĠĠ Ġoverride Ġfun Ġon Activity Created ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Activity Created ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġ// setup Ġthe Ġlistener Ġfor Ġthe Ġfragment ĠA ĊĠĠĠĠĠĠĠ Ġval Ġobserver Ġ= ĠObserver Ġ{ Ġmsg : ĠString ? Ġ-> ĠtextView ?. text Ġ= Ġmsg Ġ} ĊĠĠĠĠĠĠĠ Ġpager Agent ViewModel . getMessage Container A () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ? . observe ( view Lifecycle Owner , Ġobserver ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( in flater : ĠLayoutInflater , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ?): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠInf late Ġthe Ġlayout Ġfor Ġthis Ġfragment ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= Ġinflater . inflate ( R . layout . fragment _ blank _ a , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontainer , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfalse ) ĊĠĠĠĠĠĠĠ ĠtextView Ġ= Ġview . findViewById ( R . id . fragment _ text A ) ĊĠĠĠĠĠĠĠ Ġ// Ġset Ġthe Ġonclick Ġlistener ĊĠĠĠĠĠĠĠ Ġval Ġbutton Ġ= Ġview . findViewById < Button >( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . btn A ) ĊĠĠĠĠĠĠĠ Ġbutton . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpager Agent ViewModel . sendMessage To B ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Hello ĠB ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġview ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠTODO : ĠRename Ġand Ġchange Ġtypes Ġand Ġnumber Ġof Ġparameters ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġnew Instance (): ĠBl ank Fragment A Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠBl ank Fragment A () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }