1.使用系统调用,直接结束pid:
android.os.Process.killProcess(android.os.Process.myPid())
缺点:退出应用程序时,没有过渡动画,很不优雅。
2.返回桌面:
@Composable
fun HomeButton() {
val context = LocalContext.current
BackHandler(onBack = {
// 拦截返回键事件,不让它回退到上一个界面
// 然后执行返回桌面的操作
context.startActivity(Intent(Intent.ACTION_MAIN).apply {
addCategory(Intent.CATEGORY_HOME)
flags = Intent.FLAG_ACTIVITY_NEW_TASK
})
})
}
缺点:只能用来返回桌面
3.回上一个Activity:
fun ShopScreen(current: Context) {
val context = LocalContext.current
BackHandler { // 这里定义返回键的逻辑
if (showcard) showcard = false
else{
if (current is Activity) {
// context是Activity类型的对象
current.finish()
}
// (current as? Activity)?.finish() //这样写也一样,等价于上方的is判断语句
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术