在当前活动返回上一个活动详解

来源:互联网 发布:windows curl命令详解 编辑:程序博客网 时间:2024/05/04 14:15

一.准备工作

建立2个布局以及相应的活动类

MainActivity  SecondActivity

在activity_main布局当中建立

    <TextView        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="FirstActivity!" />    <Button        android:id="@+id/btn1"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="跳转"        />

并且在MainActivity :为这个button绑定事件

public void onClick(View v) {                Intent intent=new Intent(MainActivity.this,SecondActivity.class);                startActivity(intent);            }
SecondActivity

   public void onClick(View v) {            finish();            }

注意区别:一个是调用了finish()方法另外一个并没有调用finish()

二.按back键返回上一个页面和采用点击事件中调用finish()

back将会对当前活动执行出栈操作

 执行了onStop
01-14 19:05:06.599 22317-22317/ 执行了onDestroy

finish()
 执行了onStop
01-14 19:05:06.599 22317-22317/ 执行了onDestroy

由此可见 back返回键 和finish()实现了同样的效果

小提示:

从第一个活动跳转到第二个活动的时候

第一个活动会执行 onPause onStop方法

当从第二个活动返回(finish()或者back)

第二个活动会先执行

onPause进入暂停状态以后

第一个活动会执行

执行了onRestart
执行了onStart
执行了onResume

当一个活动准备好和用户进行交互以后

后台将对第二个活动进行出栈操作(也就是销毁)
第二个活动执行了onStop
第二个活动执行了onDestroy

0 0
原创粉丝点击