【发布时间】:2019-07-11 11:11:27
【问题描述】:
我在尝试制作注销按钮时遇到问题,当我按下注销按钮时成功,但是当我按下后退按钮时,屏幕移动到上一个活动,如何使无法返回按钮而无法onbackpressed 函数
【问题讨论】:
我在尝试制作注销按钮时遇到问题,当我按下注销按钮时成功,但是当我按下后退按钮时,屏幕移动到上一个活动,如何使无法返回按钮而无法onbackpressed 函数
【问题讨论】:
每当您在单击注销按钮时开始新活动时,请使用intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP);。
这将清除返回堆栈中的所有活动,因此当您按下返回按钮时,应用程序将不会打开上一个活动。
【讨论】:
如果你想在logout之后关闭应用,那么在onBackPressed()方法中调用finishAffinity()为
override fun onBackPressed() {
finishAffinity()
}
或者,如果你想在logout之后导航到其他activity,那么
override fun onBackPressed() {
// Write your code here
super.onBackPressed()
}
【讨论】:
sharedpreference检查登录状态,如果状态为假,则onBackPressed()方法移动到其他活动或调用finishAffinity()关闭应用程序
我知道也许这是一个最佳实践
startActivity(intentFor<LoginActivity>().newTask().clearTask())
【讨论】: