Skip to content
This repository was archived by the owner on Dec 9, 2024. It is now read-only.

Commit 03d9f5e

Browse files
handle back button key event
1 parent 303ae8b commit 03d9f5e

File tree

1 file changed

+18
-0
lines changed
  • DrawableAnimations/app/src/main/java/com/example/android/drawableanimations/demo/animated

1 file changed

+18
-0
lines changed

DrawableAnimations/app/src/main/java/com/example/android/drawableanimations/demo/animated/AnimatedFragment.kt

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,11 @@
1616

1717
package com.example.android.drawableanimations.demo.animated
1818

19+
import android.content.Context
1920
import android.graphics.drawable.Drawable
2021
import android.os.Bundle
2122
import android.view.View
23+
import androidx.activity.OnBackPressedCallback
2224
import androidx.fragment.app.Fragment
2325
import androidx.vectordrawable.graphics.drawable.Animatable2Compat
2426
import androidx.vectordrawable.graphics.drawable.AnimatedVectorDrawableCompat
@@ -29,6 +31,22 @@ import com.example.android.drawableanimations.viewBindings
2931
class AnimatedFragment : Fragment(R.layout.animated_fragment) {
3032

3133
private val binding by viewBindings(AnimatedFragmentBinding::bind)
34+
override fun onAttach(context: Context) {
35+
super.onAttach(context)
36+
val callback: OnBackPressedCallback = object : OnBackPressedCallback(
37+
true // default to enabled
38+
) {
39+
override fun handleOnBackPressed() {
40+
binding.stop.performClick()
41+
activity?.supportFragmentManager?.popBackStack()
42+
}
43+
}
44+
requireActivity().onBackPressedDispatcher.addCallback(
45+
this, // LifecycleOwner
46+
callback
47+
)
48+
}
49+
3250

3351
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
3452
val icon = AnimatedVectorDrawableCompat.create(

0 commit comments

Comments
 (0)