package Ġcom . coding night . example . navigation drawer Ċ Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . animation . Object Animator Ċ import Ġandroid . content . Context Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . ImageView Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . lifecycle . ViewModel Provider Ċ import Ġcom . coding night . example . navigation drawer . databinding . Activity Main Binding Ċ import Ġcom . coding night . example . navigation drawer . databinding . First Fragment Binding Ċ Ċ class ĠFirst Fragment Ġ: ĠFragment () Ġ{ ĊĠĠĠ Ġprivate Ġvar Ġm ViewModel : ĠFirst ViewModel ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġvar ĠimageView : ĠImageView ? Ġ= Ġnull ĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġbinding Ġ= ĠFirst Fragment Binding . inflate ( in flater ) ĊĠĠĠĠĠĠĠ ĠimageView Ġ= Ġbinding . imageView ĊĠĠĠĠĠĠĠ Ġreturn Ġbinding . root ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) ĊĊĠĠĠĠĠĠĠ Ġm ViewModel Ġ= ĠViewModel Provider ( require Activity ()). get ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFirst ViewModel :: class . java ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠimageView !!. rotation Ġ= Ġm ViewModel !!. rotation Position ĊĠĠĠĠĠĠĠ Ġval Ġobject Animator Ġ= ĠObject Animator . of Float ( imageView , Ġ" rotation ", Ġ 0 f , Ġ 0 f ) ĊĠĠĠĠĠĠĠ Ġobject Animator . duration Ġ= Ġ 5 0 0 ĊĠĠĠĠĠĠĠ ĠimageView !!. setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! object Animator . isRunning ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġobject Animator . set Float Values ( imageView !!. rotation , ĠimageView !!. rotation Ġ+ Ġ 1 0 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm ViewModel !!. rotation Position Ġ+= Ġ 1 0 0 f ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġobject Animator . start () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonStart () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onStart () ĊĠĠĠĠĠĠĠ Ġ( require Activity () Ġas ĠMainActivity ). toolbar Layout ?. title Ġ= ĠgetString ( R . string . rotate ) ĊĠĠĠĠĠĠĠ Ġ( require Activity () Ġas ĠMainActivity ). toolbar Icon ImageView ?. setImage Resource ( R . drawable . ic _ look s _ one ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠTAG Ġ= Ġ" hello " ĊĠĠĠ Ġ} Ċ }