package Ġwork . sh ion . x app recipe . templates . link _ insert _ dialog Ċ Ċ import Ġandroid . app . Dialog Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . view . Window Ċ import Ġandroidx . fragment . app . Dialog Fragment Ċ import Ġandroidx . fragment . app . activity ViewModels Ċ import Ġwork . sh ion . x app recipe . databinding . Templates Link Insert Dialog Binding Ċ Ċ /** Ċ Ġ* Ġ ãĥª ãĥ³ ãĤ¯ çĻ»éĮ² ãĥĢ ãĤ¤ ãĤ¢ ãĥŃãĤ° Ċ Ġ* Ċ Ġ* Ġ## ĠExample Ċ Ġ* Ġ### Ġãĥ Ģ ãĤ¤ ãĤ¢ ãĥŃãĤ° ãģ® åĳ¼ ãģ³ åĩº ãģĹ Ċ Ġ* Ġ``` Ġkotlin Ċ Ġ* Ġactivity ?. let Ġ{ ĠNavigation . find Nav Controller ( it , ĠR . id . entrypoint ) Ġ} Ċ Ġ* ĠĠĠĠ Ġ? . navigate ( Nav Entry point Directions . nav act Show Link Insert Dialog ()) Ċ Ġ* Ġ``` Ċ Ġ* Ċ Ġ* Ġ### Ġãĥ Ģ ãĤ¤ ãĤ¢ ãĥŃãĤ° éģ¸æĬŀ çµĲæŀľ ãģ® åıĹ ãģĳ åıĸ ãĤĬ Ċ Ġ* Ġ``` Ġkotlin Ċ Ġ* Ġclass ĠX xx Ġ: ĠFragment () Ġ{ Ċ Ġ* ĠĠĠĠ Ġprivate Ġval Ġlink Insert Dialog ViewModel Ġby Ġactivity ViewModels < Link Insert Dialog ViewModel >() Ċ Ġ* Ċ Ġ* ĠĠĠĠ Ġ.... .. Ċ Ġ* Ċ Ġ* ĠĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ Ċ Ġ* ĠĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) Ċ Ġ* Ċ Ġ* ĠĠĠĠĠĠĠĠ Ġlink Insert Dialog ViewModel . input . observe ( view Lifecycle Owner ) Ġ{ Ċ Ġ* ĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! it . isNull Or Blank ()) Ġ{ Ċ Ġ* ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlink Insert Dialog ViewModel . input . value Ġ= Ġnull Ċ Ġ* ĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ċ Ġ* ĠĠĠĠĠĠĠĠ Ġ} Ċ Ġ* ĠĠĠĠ Ġ} Ċ Ġ* Ġ} Ċ Ġ* Ġ``` Ċ Ġ*/ Ċ class ĠLink Insert Dialog Ġ: ĠDialog Fragment () Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġbinding : ĠTemplates Link Insert Dialog Binding ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġval ĠviewModel Ġby Ġactivity ViewModels < Link Insert Dialog ViewModel >() ĊĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , ĊĠĠĠĠĠĠĠ Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġbinding Ġ= ĠTemplates Link Insert Dialog Binding . inflate ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinflater , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontainer , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġreturn Ġbinding ?. root ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) ĊĊĠĠĠĠĠĠĠ Ġbinding ?. templates Link Insert Dialog Close ?. setOnClickListener Ġ{ Ġdismiss () Ġ} ĊĠĠĠĠĠĠĠ Ġbinding ?. templates Link Insert Dialog Register ?. setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdismiss () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠviewModel . input . value Ġ= Ġbinding ?. templates Link Insert Dialog Input ?. input ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate Dialog ( savedInstanceState : ĠBundle ?): ĠDialog Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġsuper . onCreate Dialog ( savedInstanceState ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequest Window Feature ( Window . FEATURE _ NO _ TITLE ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Pause () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Pause () ĊĠĠĠĠĠĠĠ Ġdismiss () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Destroy View () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Destroy View () ĊĠĠĠĠĠĠĠ Ġbinding Ġ= Ġnull ĊĠĠĠ Ġ} Ċ } Ċ