package Ġcom . example . film search . view . fragments Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . transition . Scene Ċ import Ġandroid . transition . Slide Ċ import Ġandroid . transition . Transition Manager Ċ import Ġandroid . transition . Transition Set Ċ import Ġandroid . view . Gravity Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . appcompat . widget . Search View Ċ import Ġandroidx . constraint layout . widget . Constraint Layout Ċ import Ġandroidx . core . view . isVisible Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . lifecycle . ViewModel Provider Ċ import Ġandroidx . recyclerview . widget . Linear LayoutManager Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . example . film search . R Ċ import Ġcom . example . film search . data . entity . Film Ċ import Ġcom . example . film search . databinding . Fragment Home Binding Ċ import Ġcom . example . film search . utils . Animation Helper Ċ import Ġcom . example . film search . view . MainActivity Ċ import Ġcom . example . film search . view . rv _ adapters . Film List Recycler Adapter Ċ import Ġcom . example . film search . view . rv _ adapters . Top Spacing Item Decoration Ċ import Ġcom . example . film search . view model . Home Fragment ViewModel Ċ import Ġjava . util .* ĊĊ Ċ class ĠHome Fragment Ġ: ĠFragment () Ġ{ ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġfil ms Adapter : ĠFil m List Recycler Adapter ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġbinding : ĠFragment Home Binding ĊĠĠĠ Ġprivate Ġval ĠviewModel Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠViewModel Provider . New Instance Factory (). create ( Home Fragment ViewModel :: class . java ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġprivate Ġvar Ġfil ms Data Base Ġ= ĠlistOf < Film >() ĊĠĠĠĠĠĠĠ Ġ// Ðĺ ÑģÐ¿ Ð¾Ð»ÑĮÐ· Ñĥ ÐµÐ¼ Ġbacking Ġfield ĊĠĠĠĠĠĠĠ Ġset ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ðķ ÑģÐ»Ð¸ ĠÐ¿ÑĢÐ¸ Ð´ ÐµÑĤ ĠÑĤÐ°Ðº Ð¾Ðµ ĠÐ¶Ðµ ĠÐ·Ð½Ð°ÑĩÐµÐ½Ð¸Ðµ , ĠÑĤÐ¾ ĠÐ¼Ñĭ ĠÐ²Ñĭ ÑħÐ¾Ð´ Ð¸Ð¼ ĠÐ¸Ð· ĠÐ¼ÐµÑĤ Ð¾Ð´Ð° ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( field Ġ== Ġvalue ) Ġreturn ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ðķ ÑģÐ»Ð¸ ĠÐ¿ÑĢÐ¸ ÑĪ Ð»Ð¾ ĠÐ´ÑĢÑĥÐ³ Ð¾Ðµ ĠÐ·Ð½Ð°ÑĩÐµÐ½Ð¸Ðµ , ĠÑĤÐ¾ ĠÐº Ð» Ð°Ð´ ÐµÐ¼ ĠÐµÐ³Ð¾ ĠÐ² ĠÐ¿ÐµÑĢ ÐµÐ¼ ÐµÐ½ Ð½ÑĥÑİ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfield Ġ= Ġvalue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ðŀ Ð± Ð½Ð¾Ð² Ð»Ñı ÐµÐ¼ ĠR V ĠÐ° Ð´ Ð°Ð¿ ÑĤÐµÑĢ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfil ms Adapter . add Items ( field ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġretain Instance Ġ= Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView Ġ{ ĊĠĠĠĠĠĠĠ Ġbinding Ġ= ĠFragment Home Binding . inflate ( in flater , Ġcontainer , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġreturn Ġbinding . root ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) ĊĠĠĠĠĠĠĠ ĠAnimation Helper . perform Fragment Circular Re veal Animation ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . home Fragment Root , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequire Activity (), ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġ// Ðļ Ð» Ð°Ð´ ÐµÐ¼ ĠÐ½Ð° ÑĪ Ñĥ ĠÐĳ ÐĶ ĠÐ² ĠR V ĊĠĠĠĠĠĠĠ ĠviewModel . fil ms List LiveData . observe ( view Lifecycle Owner ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfil ms Data Base Ġ= Ġit ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfil ms Adapter . add Items ( it ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠviewModel . show ProgressBar . observe ( view Lifecycle Owner ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . progress Bar . isVisible Ġ= Ġit ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġscene Transition ( binding . home Fragment Root ) ĊĊĠĠĠĠĠĠĠ Ġinit Search View ( view ) ĊĊĠĠĠĠĠĠĠ Ġinit Recycler ( view ) ĊĠĠĠĠĠĠĠ Ġinit Pull To Refresh () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit Pull To Refresh () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ÐĴ ÐµÑĪ Ð°ÐµÐ¼ ĠÑģÐ» Ñĥ ÑĪ Ð°ÑĤÐµÐ»ÑĮ , ĠÑĩÑĤÐ¾Ð±Ñĭ ĠÐ²Ñĭ Ð· Ð² Ð°Ð» ÑģÑı Ġpull Ġto Ġrefresh ĊĠĠĠĠĠĠĠ Ġbinding . pull To Refresh . setOn Refresh Listener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ð§ Ð¸ÑģÑĤ Ð¸Ð¼ ĠÐ° Ð´ Ð°Ð¿ ÑĤÐµÑĢ ( items ĠÐ½ ÑĥÐ¶ Ð½Ð¾ ĠÐ±ÑĥÐ´ÐµÑĤ ĠÑģ Ð´ÐµÐ» Ð°ÑĤÑĮ ĠÐ¿ Ð°Ð± Ð»Ð¸ Ðº ĠÐ¸Ð»Ð¸ ĠÑģÐ¾Ð·Ð´ Ð°ÑĤÑĮ ĠÐ´Ð»Ñı ĠÑįÑĤ Ð¾Ð³Ð¾ ĠÐ¿ ÑĥÐ± Ð»Ð¸Ñĩ Ð½ÑĭÐ¹ ĠÐ¼ÐµÑĤÐ¾Ð´ ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfil ms Adapter . items . clear () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ÐĶ ÐµÐ» Ð°ÐµÐ¼ ĠÐ½Ð¾Ð² ÑĭÐ¹ ĠÐ·Ð°Ð¿ ÑĢÐ¾Ñģ ĠÑĦ Ð¸Ð»ÑĮ Ð¼ Ð¾Ð² ĠÐ½Ð° ĠÑģÐµÑĢ Ð²ÐµÑĢ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠviewModel . get Fil ms () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ð£ Ð± Ð¸ ÑĢÐ° ÐµÐ¼ ĠÐº ÑĢÑĥ ÑĤ Ñı Ñī ÐµÐµ ÑģÑı ĠÐºÐ¾Ð» ÐµÑĩ ÐºÐ¾ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . pull To Refresh . is Refresh ing Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġprivate Ġfun Ġinit Recycler ( view : ĠView ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmain Recycler Ġ= Ġview . findViewById < RecyclerView >( R . id . main _ recycler ) ĊĠĠĠĠĠĠĠ Ġ// Ð½Ð° ÑħÐ¾Ð´ Ð¸Ð¼ ĠÐ½Ð° ÑĪ ĠR V ĊĠĠĠĠĠĠĠ Ġmain Recycler . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfil ms Adapter Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFil m List Recycler Adapter ( object Ġ: ĠFil m List Recycler Adapter . On ItemClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġclick ( film : ĠFil m ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( require Activity () Ġas ĠMainActivity ). launch Details Fragment ( film ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ÐŁÑĢ Ð¸Ñģ Ð² Ð° Ð¸Ð² Ð°ÐµÐ¼ ĠÐ° Ð´ Ð°Ð¿ ÑĤÐµÑĢ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadapter Ġ= Ġfil ms Adapter ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ÐŁÑĢ Ð¸Ñģ Ð² Ð¾ Ð¸ Ġlayout manager ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlayout Manager Ġ= ĠLinearLayoutManager ( require Context ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ÐŁÑĢ Ð¸Ð¼ ÐµÐ½ Ñı ÐµÐ¼ ĠÐ´ ÐµÐº Ð¾ÑĢ Ð°ÑĤÐ¾ÑĢ ĠÐ´Ð»Ñı ĠÐ¾ÑĤ ÑģÑĤ ÑĥÐ¿ Ð¾Ð² ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdecorator Ġ= ĠTop Spacing Item Decoration ( 8 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd Item Decoration ( decorator ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit Search View ( view : ĠView ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsearch View Ġ= Ġview . findViewById < Search View >( R . id . search _ view ) ĊĊĠĠĠĠĠĠĠ Ġsearch View . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsearch View . is Icon ified Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// ÐŁ Ð¾Ð´ ÐºÐ»ÑİÑĩ Ð°ÐµÐ¼ ĠÑģÐ» Ñĥ ÑĪ Ð°ÑĤ ÐµÐ»Ñı ĠÐ¸Ð· Ð¼ÐµÐ½ ÐµÐ½Ð¸Ð¹ ĠÐ² Ð²ÐµÐ´ ÐµÐ½ Ð½Ð¾Ð³Ð¾ ĠÑĤÐµÐº ÑģÑĤ Ð° ĠÐ² ĠÐ¿Ð¾ Ð¸Ñģ ÐºÐ° ĊĠĠĠĠĠĠĠ Ġsearch View . setOn Query Text Listener ( object Ġ: ĠSearch View . On Query Text Listener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ÐŃ ÑĤ Ð¾ÑĤ ĠÐ¼ÐµÑĤÐ¾Ð´ ĠÐ¾ÑĤ ÑĢÐ°Ð ± Ð°ÑĤ ÑĭÐ² Ð°ÐµÑĤ ĠÐ¿ÑĢÐ¸ ĠÐ½ Ð°Ð¶ Ð°ÑĤ Ð¸Ð¸ ĠÐº Ð½ Ð¾Ð¿ ÐºÐ¸ Ġ" Ð¿ Ð¾ Ð¸Ñģ Ðº " ĠÐ½Ð° ĠÑģÐ¾ ÑĦ ÑĤ ĠÐº Ð» Ð°Ð² Ð¸ Ð°ÑĤ ÑĥÑĢ Ðµ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Query Text Submit ( query : ĠString ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ÐŃ ÑĤ Ð¾ÑĤ ĠÐ¼ÐµÑĤÐ¾Ð´ ĠÐ¾ÑĤ ÑĢÐ°Ð ± Ð°ÑĤ ÑĭÐ² Ð°ÐµÑĤ ĠÐ½Ð° ĠÐº Ð°Ð¶Ð´ Ð¾Ðµ ĠÐ¸Ð· Ð¼ÐµÐ½ ÐµÐ½Ð¸Ñı ĠÑĤÐµÐº ÑģÑĤ Ð° ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Query Text Change ( new Text : ĠString ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ðķ ÑģÐ»Ð¸ ĠÐ² Ð²Ð¾Ð´ ĠÐ¿ ÑĥÑģÑĤ ĠÑĤÐ¾ ĠÐ² ÑģÑĤÐ°Ð² Ð»Ñı ÐµÐ¼ ĠÐ² ĠÐ° Ð´ Ð°Ð¿ ÑĤÐµÑĢ ĠÐ²Ñģ Ñİ ĠÐĳ ÐĶ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( new Text . isEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfil ms Adapter . add Items ( fil ms Data Base ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ð¤ Ð¸Ð»ÑĮ ÑĤ ÑĢÑĥ ÐµÐ¼ ĠÑģÐ¿Ð¸Ñģ Ð¾Ðº ĠÐ½Ð° ĠÐ¿Ð¾ Ð¸Ñģ Ðº Ðº ĠÐ¿Ð¾Ð´ ÑħÐ¾Ð´ Ñı ÑīÐ¸ Ñħ ĠÑģ Ð¾Ñĩ ÐµÑĤ Ð°Ð½Ð¸ Ð¹ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġfil ms Data Base . filter Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ð§ ÑĤÐ¾Ð±Ñĭ ĠÐ²ÑģÐµ ĠÑĢÐ°Ð±Ð¾ÑĤ Ð°Ð» Ð¾ ĠÐ¿ÑĢÐ°Ð² Ð¸Ð»ÑĮ Ð½Ð¾ , ĠÐ½ ÑĥÐ¶ Ð½Ð¾ ĠÐ¸ ĠÐ·Ð°Ð¿ ÑĢÐ¾Ñģ , ĠÐ¸ ĠÐ¸Ð¼ Ñı ĠÑĦ Ð¸Ð»ÑĮ Ð¼ Ð° ĠÐ¿ÑĢ Ð¸Ð² Ð¾Ð´ Ð¸ÑĤÑĮ ĠÐº ĠÐ½ Ð¸ Ð¶ Ð½ ÐµÐ¼ Ñĥ ĠÑĢ ÐµÐ³ Ð¸ÑģÑĤ ÑĢÑĥ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . title . lowercase ( Locale . getDefault ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. contains ( new Text . lowercase ( Locale . getDefault ())) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ÐĶ Ð¾Ð±Ð°Ð² Ð»Ñı ÐµÐ¼ ĠÐ² ĠÐ° Ð´ Ð°Ð¿ ÑĤÐµÑĢ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfil ms Adapter . add Items ( result ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġscene Transition ( home Fragment Root : ĠConstraint Layout ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġscene Ġ= ĠScene . get Scene For Layout ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhome Fragment Root , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . layout . merge _ home _ screen _ content , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequire Context () ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġ// Ð¡ Ð¾Ð· Ð´Ð° ÐµÐ¼ ĠÐ° Ð½ Ð¸Ð¼ Ð°ÑĨÐ¸ Ñİ ĠÐ²Ñĭ ÐµÐ· Ð´Ð° ĠÐ¿Ð¾Ð» Ñı ĠÐ¿Ð¾ Ð¸Ñģ ÐºÐ° ĠÑģÐ² ÐµÑĢ Ñħ Ñĥ ĊĠĠĠĠĠĠĠ Ġval Ġsearch Slide Ġ= ĠSlide ( Gravity . TOP ). add Target ( R . id . search _ view ) ĊĠĠĠĠĠĠĠ Ġ// Ð¡ Ð¾Ð· Ð´Ð° ÐµÐ¼ ĠÐ° Ð½ Ð¸Ð¼ Ð°ÑĨÐ¸ Ñİ ĠÐ²Ñĭ ÐµÐ· Ð´Ð° ĠR V ĠÑģ Ð½Ð¸ Ð· Ñĥ ĊĠĠĠĠĠĠĠ Ġval Ġre cycler Slide Ġ= ĠSlide ( Gravity . BOTTOM ). add Target ( R . id . main _ recycler ) ĊĠĠĠĠĠĠĠ Ġ// Ð¡ Ð¾Ð· Ð´Ð° ÐµÐ¼ ĠÑįÐº Ð· ÐµÐ¼ Ð¿ Ð»Ñı ÑĢ ĠTransition Set , ĠÐºÐ¾ÑĤÐ¾ÑĢ ÑĭÐ¹ ĠÐ¾Ð±ÑĬ ÐµÐ´ Ð¸Ð½ Ð¸ÑĤ ĠÐ²ÑģÐµ ĠÐ½Ð° ÑĪÐ¸ ĠÐ° Ð½ Ð¸Ð¼ Ð°ÑĨÐ¸Ð¸ ĊĠĠĠĠĠĠĠ Ġval Ġcustom Transition Ġ= ĠTransition Set (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ð£ ÑģÑĤÐ°Ð½ Ð°Ð² Ð»Ð¸ Ð² Ð°ÐµÐ¼ ĠÐ²ÑĢÐµÐ¼ Ñı , ĠÐ·Ð° ĠÐºÐ¾ÑĤÐ¾ÑĢ Ð¾Ðµ ĠÐ±ÑĥÐ´ÐµÑĤ ĠÐ¿ÑĢÐ¾ ÑħÐ¾Ð´ Ð¸ÑĤÑĮ ĠÐ° Ð½ Ð¸Ð¼ Ð°ÑĨÐ¸Ñı ĊĠĠĠĠĠĠĠĠĠĠĠ Ġduration Ġ= Ġ 5 0 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ÐĶ Ð¾Ð±Ð°Ð² Ð»Ñı ÐµÐ¼ ĠÑģ Ð°Ð¼Ð¸ ĠÐ° Ð½ Ð¸Ð¼ Ð°ÑĨÐ¸Ð¸ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd Transition ( recycler Slide ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd Transition ( search Slide ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ// Ð¢ Ð°Ðº Ð¶Ðµ ĠÐ·Ð°Ð¿ ÑĥÑģ ÐºÐ° ÐµÐ¼ ĠÑĩ ÐµÑĢ ÐµÐ· ĠTransition Manager , ĠÐ½Ð¾ ĠÐ² ÑĤÐ¾ÑĢ Ñĭ Ð¼ ĠÐ¿Ð°ÑĢÐ°Ð¼ÐµÑĤ ÑĢ Ð¾Ð¼ ĠÐ¿ÐµÑĢ ÐµÐ´ Ð°ÐµÐ¼ ĠÐ½Ð° ÑĪ Ñĥ ĠÐº Ð°ÑģÑĤ Ð¾Ð¼ Ð½ÑĥÑİ ĠÐ° Ð½ Ð¸Ð¼ Ð°ÑĨÐ¸ Ñİ ĊĠĠĠĠĠĠĠ ĠTransition Manager . go ( scene , Ġcustom Transition ) ĊĠĠĠ Ġ} Ċ }