千家信息网

Android中Activity的启动模式有哪些

发表于:2024-11-22 作者:千家信息网编辑
千家信息网最后更新 2024年11月22日,这篇文章主要介绍Android中Activity的启动模式有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Activity的启动模式standard:每次激活Activit
千家信息网最后更新 2024年11月22日Android中Activity的启动模式有哪些

这篇文章主要介绍Android中Activity的启动模式有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

Activity的启动模式

  1. standard:每次激活Activity时(startActivity),都创建Activity实例,并放入任务栈;

  2. singleTop:如果某个Activity自己激活自己,即任务栈栈顶就是该Activity,则不需要创建,其余情况都要创建Activity实例;

  3. singleTask:如果要激活的那个Activity在任务栈中存在该实例,则不需要创建,只需要把此Activity放入栈顶,即把该Activity以上的Activity实例都pop,并调用其onNewIntent;

  4. singleInstance:应用1的任务栈中创建了MainActivity实例,如果应用2也要激活MainActivity,则不需要创建,两应用共享该Activity实例。

4、Activity与Fragment之间的传值

  1. 通过findFragmentByTag或者getActivity获得对方的引用(强转)之后,再相互调用对方的public方法,但是这样做一是引入了"强转"的丑陋代码,另外两个类之间各自持有对方的强引用,耦合较大,容易造成内存泄漏。

  2. 通过Bundle的方法进行传值,例如以下代码:

//Activity中对fragment设置一些参数  fragment.setArguments(bundle);  //fragment中通过getArguments获得Activity中的方法  Bundle arguments = getArguments();

3. 利用eventbus进行通信,这种方法实时性高,而且Activity与Fragment之间可以完全解耦。

//Activity中的代码  EventBus.getDefault().post("消息");   //Fragment中的代码  EventBus.getDefault().register(this);  @Subscribe  public void test(String text) {      tv_test.setText(text);  }

以上是"Android中Activity的启动模式有哪些"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

实例 代码 任务 方法 激活 模式 之间 对方 应用 内容 篇文章 较大 丑陋 两个 价值 兴趣 内存 参数 实时 实时性 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 代理服务器还是我的真实ip ec2服务器连接不上 数据库新建的表怎么删除 软件开发功能大纲 淘宝外卖服务器怎么了 数据库索引的重构过程 论文改原数据库 电大大专网络技术课程设计 北京正规软件开发需要多少钱 软件开发 保密资质证书 软件开发报名费多少 四川工业软件开发价钱是多少 明文存储数据库密码 服务器急需命令方块管理员 数学很差可以学网络技术吗 服务器正常运行显示什么颜色灯光 服务器没有d盘怎么回事 服务器需要什么级别的电脑硬件 纳思达软件开发助理工程师 中美互联网科技公司排名 无线网络技术 课程目的 京东云服务器怎么登陆 惠普服务器黄灯一直闪 数据库 评价 软件开发和测试环境维护文件 考研网络安全专业学什么 软件开发的生产率 网络安全信息办公室设在什么地方 蓝思网络技术贾冬娥 朝阳区焦点网络技术服务中心
0