Android开发之Activity

启动和结束

逐一显示的活动界面,类似于PS中的层

Activity启动

Intent intent = new Intent();  //意图
intent.setClass(MainActivity.this, MainActivity2.class);  //从A跳转到B
startActivity(intent);

Activity关闭,也可以是返回之前的界面

finish();

生命周期

 跳转,intent跳转到其他activity执行到Onstop()

返回会走 onRestart() ->onStart()

没有完全消失时返回就会走OnPause()->OnResume()

退出切换应用时会走左边的路,重新创建应用

一般在onCreate中创建活动,吧页面加入内存。

在onResume中再加入动画。

启动模式

类似于任务栈,先进先出。(默认下)

几种常见的启动方式。

FLAG_ACTIVITY_NEW_TASK :为Activity指定“singleTask”启动模式,其效果和在XML中指定启动模式一样


FLAG_ACTIVITY_SINGLE_TOP :为Activity指定“singleTop”启动模式,其效果和在XML中指定启动模式一样


FLAG_ACTIVITY_CLEAR_TOP :当Activity启动时,在同一任务栈中所有位于它上面的Activity都要出栈。这个模式需要和FLAG_ACTIVITY_NEW_TASK 配合使用,被启动Activity实例如果已经存在,系统就会调用它的onNewIntent.


FLAG_EXCLUDE_FROM_RECENTS :此Activity不会出现在历史Activity列表中,不希望用户通过历史列表回到Activity。其效果和在XML中指定Activity的属性:android:excludeFromRecents=”true” 一样
 

 button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intent = new Intent();
                intent.setClass(MainActivity.this, MainActivity2.class);
                //保证唯一界面
                //intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

                //清空栈,然后开启一个新的栈,类似于登录界面仅显示一次
                intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK);
                startActivity(intent);

            }
        });

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值