【发布时间】:2018-08-13 23:24:43
【问题描述】:
在 JAVA 中我们可以关闭应用程序。我们尝试使用 Kotlin 开发技能,并感觉我们正在使用正确的语法来关闭应用程序。问题是代码只有在您在进入第二页并返回 MainActivity 之前关闭应用程序时才有效,MainActivity 是下面的启动器活动代码
fun onTV(view: View){
exitProcess()
}
private fun exitProcess() {
//finish()
System.exit(-1)
}
finish 和 System.exit(-1) 都可以在没有导航的情况下先选择 到 PageTwoActivity
onTV 是 TextView 的 onClick 属性 我的猜测是我们需要清除堆栈购买设置标志所以问题是 Kotlin 中这个的语法是什么?请记住,我们在启动器页面上 主要活动。我们需要结果的意图吗?
好的,我尝试了这段代码,没有任何改进
val intent = Intent(context, MainActivity::class.java)
intent.flags = Intent.FLAG_ACTIVITY_CLEAR_TOIntent.FLAG_ACTIVITY_NEW_TASK
finish()
我们已经接近了现在的代码,但问题仍然是,如果您不导航到 PageTwo 并单击按钮以在应用程序启动后立即关闭应用程序,这将关闭应用程序
fun onTV(view: View){
onBYE()
}
fun onBYE() {
exitProcess(-1)
}
所以我想问题是如何在执行 onBYE 时从堆栈中清除 PageTwo ?
【问题讨论】:
-
是的,startActivityForResult 和 setResult 带有一些 EXIT_CODE,然后去听它并向后传播(带有更多的 setResuts)
-
@MarcosVasconcelos 因为我搜索并找不到示例代码,您能否发布一小段代码,正是这一行让我感到困惑 val intent = Intent(this@MainActivity, PageTwoActivity::class.java ) 声明意图是我们迷路的地方
-
@MarcosVasconcelos 我添加并编辑了我的任务,以显示我用来在 Kotlin 中构建和 Intent 的代码结构没有结果
标签: android android-intent kotlin