我想在用户触摸底部导航的后退时调用一个函数?有什么方法或途径吗?
kt06eoxx1#
您可以在Activity类中重写onBackPressed方法。
onBackPressed
但是,onBackPressed在API 33之后已弃用。现在,您可以在onBackPressedDispatcher上添加回调来替代onBackPressed
onBackPressedDispatcher
class MyActivity : AppCompatActivity() { private val callback = object : OnBackPressedCallback(true) { override fun handleOnBackPressed() { // something you want to do } } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) // ... this.onBackPressedDispatcher.addCallback(this, callback) }
这段代码是针对Activity的。如果你想在Fragment中设置后退按钮动作,你可以查看这个文档。https://developer.android.com/reference/androidx/activity/OnBackPressedDispatcher
Activity
cbwuti442#
使用override fun onBackPressed()方法
override fun onBackPressed()
override fun onBackPressed(){ // Do something // add super.onBackPressed() if you want to call the normal back function }
愿此解决方案对您有所帮助。谢谢
2条答案
按热度按时间kt06eoxx1#
旧的
您可以在Activity类中重写
onBackPressed
方法。近期(API〉= 33)
但是,
onBackPressed
在API 33之后已弃用。现在,您可以在onBackPressedDispatcher
上添加回调来替代onBackPressed
这段代码是针对
Activity
的。如果你想在Fragment中设置后退按钮动作,你可以查看这个文档。https://developer.android.com/reference/androidx/activity/OnBackPressedDispatcher
cbwuti442#
使用
override fun onBackPressed()
方法愿此解决方案对您有所帮助。
谢谢