Activity中的各种“finish()”⽅法
finish ()
finish ()⽅法在你的activity结束或者应该被关闭时调⽤。ActivityResult将通过onActivityResult()⽅法传递给启动者。这是⽐较常⽤的关闭Activity的⽅法。
注意:通过startActivityForResult⽅法来启动Activity,才能将ActivityResult通过onActivityResult()⽅法传递给启动者。普通的startActivity⽅法是不会在 finish ()⽅法后传递ActivityResult的。
finishActivity (int requestCode)
强制关闭另⼀个你先前通过startActivityForResult(Intent, int)启动的Activity。该⽅法不会关闭当前Activity,可以关闭通过requestCode关闭,先前通过startActivityForResult传递过相同requestCode打开的Activity。
关于绿色环保的手抄报注意:通过这个⽅法,我们还可以关闭⼀起我们可以打开但不能通过代码操作的页⾯,⽐如其他应⽤或者系统界⾯。finishActivityFromChild (Activity child, int requestCode)
拉萨旅游
当⼀个该Activity的⼦activity调⽤它的finishActivity()⽅法时调⽤。
前字组词
咳嗽不能吃啥注意:该⽅法我只在使⽤TabActivity时,调⽤其⼦Activity后调⽤了finishActivity()⽅法,其他调⽤情况没有查出来。
(TabActivity在API level 13时废弃了)
又是一年岁末时finishAffinity
关闭该Activity和同⼀栈中的所有位于该Activity下⾯的Activity。⽐如说在同⼀Activity栈中,Activity A启动了Activity B,Activity B启动了Activity C。Activity B调⽤finishAffinity()⽅法,会关闭 Activity A和 Activity B,Activity C仍然存在。如果Activity C调⽤该⽅法,则A,B,C,都会被关闭,且如果应⽤只有这⼀个栈,那么C调⽤该⽅法会直接退出应⽤。
注意:该⽅法在API level 16之后添加。
finishAfterTransition
一只想飞的猫好词好句翻转Activity进⼊转场动画(Transition)⽤于Activity退出。
注意:该⽅法 在API level 21之后添加,使⽤它时,你得先定义⾃⼰的转场动画,否则它的作⽤和finish()⽅法没有区别。这⾥的转场动画不是指由overridePendingTransition实现的动画,⽽是通过ActivityOptions类实现的转场动画。
模拟器金手指
finishAndRemoveTask
初三拜年关闭Activity且关闭该Activity作为根Activity的的任务。
注意:该⽅法在API level 21之后添加。
finishFromChild
当⼀个该Activity的⼦activity调⽤它的finish()⽅法时调⽤。
注意:该⽅法和finishActivityFromChild ⽅法⼀样,我只在使⽤TabActivity时有看到调⽤。