【Kotlin安卓开发】随时随地的退出程序

本文介绍了如何在Kotlin安卓应用中方便地实现程序退出,通过创建ActivityCollector集合管理Activity,修改BaseActivity并提供finishAll()方法,以及在退出前添加确认对话框。此外,还探讨了在按钮点击事件中直接处理或通过自定义OnClickListener实现退出操作的方法。
摘要由CSDN通过智能技术生成

随时随地的退出程序

如果从初始界面跳转了很多个内嵌页面,你会发现退出当前程序会非常不方便,不要点击很多次back(点击home之后程序也只为挂起状态);或者需要设置退出当前程序的按钮,这就需要设置一个专门的集合对Activity进行管理。

一、创建ActivityCollector集合

新建一个ActivityCollector作为Activity的集合,注意本类不需要在AndroidManifest.xml中注册。

object ActivityCollector {
      //注意这里是object不是class
    private val activities = ArrayList<Activity>()  //创建一个单例类

// 用于在ArrayList中添加Activity
    fun addActivity(activity: Activity){
   
        activities.add(activity)
    }

// 用于在ArrayList中移除Activity
    fun removeActivity(activity: Activity){
   
        activities.remove(activity)
    }
// 用于将存储在ArrayList的Activity全部移除
    fun finishAll() {
   
        for (activity in activities){
   
            if (!activity.isFinishing){
   
                activity.finish()
            }
        }
        activities.clear()
    }
}

二、修改BaseActivity

前面一片文章中,创建了BaseActivity主要用于被Activity继承用于显示当前的Activity,现在也在BaseActivity添加ArrayList的addActivity()、removeActivity()等信息。

open class BaseActivity : AppCompatActivity() {
   
    override fun onCreate(savedInstanceState: Bundle?) {
   
        super.onCreate(savedInstanceState)
        //用于显示当前Activity
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值