LocalActivityManager

LocalActivityManager说明 及 Activity的onResume不被执行问题 LocalActivityManager类概述 Helper class for managing multiple running embedded activities in the same process. This class is not normally used directly, but rather created for you as part of theActivity 阅读详情
本来标题名字准备叫《如何在一个Activity的一部分中显示其他Activity》,但是实在太长了……
于是就用其中必须用到LocalActivityManager这个类作为标题了。

总的来说,实现“ 如何在一个Activity的一部分中显示其他Activity”除了 LocalActivityManager还需要一个或多个"容器"Layout(或者和Layout同级别的View)。

假设这个容器是一个LinearLayout,id是container,通常来说我们会想把这个容器的layout_weight设置成1,以便把位置先占好。

然后实例化 LocalActivityManager:
LocalActivityManager mgr = getLocalActivityManager();
然后
mContainer = (LinearLayout) findViewById(R.id.container);
最后就可以把 MyOtherActivity塞进container里面了。
mContainer.addView((mgr.startActivity("MyOtherActivityInstance1 ", new Intent(this, MyOtherActivity.class))).getDecorView());

addView是往Layout里动态增加View,别处也会用到。 mgr.startActivity比一般的 startActivity多一个String id参数:
"public Window startActivity (String id, Intent intent)"

其实这个 String id只是一个标识,自己随便起个不重样的名字就好了,作用就是系统看到id一样的activity时会把两个activity当作一个处理,不会弄出平行的两个来,反之亦然。

至于最后这个getDecorView()方法,我一开始觉得很神奇,查了很多地方,最后觉得其实也不是很复杂,就是把Activity里面所有的View,包括其摆放方式,都给调出来,这样在addView的时候就不用担心摆放等问题了。


参考资料:
将一个activity转换成一个view并显示 LocalActivityManager类是管理activity的,然后通过startActivity(String id, Intent intent)这个方法获取Window获取当前Window对象,再然后调用getDecorView()方法获取当前activity对应的view,这样就可以使用addView(View child)方法添加到activity中。 立即下载

相关推荐

QT+SOEM主站协议库实战指南—从编译到嵌入式应用

本文提供了一份QT与SOEM开源EtherCAT主站协议库的集成实战指南。详细介绍了在Windows和Linux平台下编译SOEM库的步骤,并讲解了如何将其无缝集成到QT项目中,构建具备实时监控与控制功能的工业上位机应用。内容涵盖从环境搭建、核心协议开发到嵌入式部署与优化的全流程,为开发高性价比、自主可控的工业控制解决方案提供完整路径。

u6v7w8x的博客 437

《如何在一个Activity的一部分中显示其他Activity》

--------------------------------------------- 本来标题名字准备叫《如何在一个Activity的一部分中显示其他Activity》,但是实在太长了……于是就用其中必须用到LocalActivityManager这个类作为标题了。 总的来...

chiman6219的博客 242

三维点云孔洞修复(附Python代码和公共点云数据集链接)

(1)物体自身缺失(2)物体自身形状复杂,很多凹凸面不够规则甚至存在空腔,空腔内部无法被三维激光扫描仪扫描到(3)物体部分区域对激光扫描不敏感,未被扫描上(4)扫描仪的扫描稳定性。

yanghl1215的博客 6952

安卓 2.1 Activity的简述

移动应用体验与桌面体验的不同之处在于,用户与应用的互动并不总是在同一位置开始,而是经常以不确定的方式开始。而Activity 类的目的就是促进这种范式的实现,我们来学习一下

m0_65489276的博客 1713

手把手教你用三菱PLC控制JET伺服原点:从硬件接线到GXWORKS3程序调试

本文详细介绍了如何使用三菱PLC控制JET伺服系统实现原点回归功能,涵盖硬件接线、参数配置到GX Works3程序调试的全流程。通过实战指南,帮助工程师快速掌握伺服控制技术,提升工业自动化项目的实施效率。

weixin_30642561的博客 534

python批量调用大模型API:多线程和异步协程

本文介绍了利用多线程技术批量调用大模型API的实现方法。核心是通过并发请求提高处理效率,主要采用线程池管理并发数量、结果聚合等技术。文章提供了一个完整的Python实现示例,包含APIBatchCaller类及其single_api_call和batch_call方法,详细解析了并发控制、错误处理等关键点,并给出了使用注意事项,包括并发数设置、重试策略和超时处理等。该方案特别适合IO密集型任务,能显著提升批量API调用的效率。

Cachel Wood的博客 759

LocalActivityManager的内部机制详解

LocalActivityManager的内部机制 LocalActivityManager内部机制的核心在于,它使用了主线程对象mActivityThread来装载指定的Activity。注意,这里是装载,而不是启动,这点很重要。   所谓的启动,一般是指会创建一个进程(如果所在应用进程还不存在)运行该Activity,而装载仅仅是指把该Activity作为一个普通类进行加载,并创建一个...

iteye_1576的博客 628

Apache Kylin 命令注入漏洞复现(CVE-2020-1956)

Apache Kylin 中的静态 API 存在安全漏洞,可以将os命令与用户输入字符串连接起来,攻击者可以在Kylin没有任何保护或验证的情况下执行任何os命令。

0xSec 1558

浅谈Android之Activity 窗口显示流程介绍(二)

7.3 Activity Décorview布局(layout) Measure确定Décor View以及child views的大小,layout则是确定child view在其parent view中的显示区域,只有layout结束,view的left,right,top,bottom值才会被设置,getWidth和getHeight两个函数才会返回view最终的宽高值   对Fram

拿节 602

LVGL(lv_table)

LVGL中的lv_table是一个轻量级表格控件,用于显示行列式文本数据。它支持设置单元格内容/样式、行列调整、事件响应等基础功能,适用于参数配置、数据展示等场景。通过API可快速创建表格,设置行列数、填充数据,并自定义对齐方式与样式。但需注意默认无滚动条、行数限制等问题。该控件适合简单表格需求,复杂交互需结合自定义事件处理。

m0_49476241的博客 1262

23、管状剪纸结构的研究与功能生成连杆机构的综合设计

本文研究了管状剪纸结构的压缩运动特性,通过剪纸技术将非刚性可折叠的Yoshimura和Kresling折纸结构转化为刚性可折叠结构,并提出径向可闭合剪纸(RC-kiri)构型。推导了位移与折叠角之间的数学关系,设计了带外部LET接头的RC-kiri模型,建立了力-位移理论模型并通过Abaqus进行有限元验证,制作了3D打印物理模型以测量直径变化。同时,研究了四杆和六杆功能生成连杆机构的综合设计方法,基于负闭合运动链和最小二乘法实现函数生成。结果表明理论、仿真与实验整体吻合良好,误差来源得到分析,为机器人、机

nokia的博客 167

LocalActivityManager的用法

1.前言 今天碰到一个问题,我的一个activity需要加载别人的另外一个activity,可能你会说用fragment嘛,但是我们两个属于不同的业务部门,各自平行开发,他不可能单独为了写个fragment,但是我要显示他activity的内容,这时就用到了LocalActivityManager类。 2.使用步骤 1)在我的activity中初始化一个父容器 LinearLa

j20lin的博客 787

git clone出现fatal: unable to access Failed to connect to github.com port 443: Timed out解决方案

本文主要介绍了git clone出现fatal: unable to access Failed to connect to github.com port 443: Timed out解决方案,希望能对使用git的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 23万+

过时api-Android LocalActivityManager的用法

1.前言今天碰到一个问题,我的一个activity需要加载别人的另外一个activity,可能你会说用fragment嘛,但是我们两个属于不同的业务部门,各自平行开发,他不可能单独为了写个fragment,但是我要显示他activity的内容,这时就用到了LocalActivityManager类。2.使用步骤1)在我的activity中初始化一个父容器LinearLayout linear= (L

曹银飞的专栏 9685

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

TabActivity,LocalActivityManager,TabHost,TabWidget深度分析

TabAcitivity继承自AcitivtyGroup,AcitivityGroup的主要作用是创建一个LocalActivityManger,然后把activity的onCreate等事件传递给LocalActivity来处理,作用仅此而已,非常简单。 TabActivit

jiangchaoasf的专栏 1484

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

LocalActivityManager详解

1.LocalActivityManager的说明     LocalActivityManager是Android封装的把activity转换成view对象的一个api. 2.LocalActivityManager用法     LocalActivityManager类是管理activity的,然后通过startActivity(String id,Intent intent

qq_32320807的博客 1415

一个LocalActivityManager的demo之后的简单修改 [未完,有时间再写吧]

从同事手上拿到一个类似qq界面的android 的demo 自己弄了下, 大致如下图:          通过 滑动 和 点击 都可以跳转对应的activity。 看了下,是用的 LocalActivityManager 这一个类, 现在用的是2.2, level是 8    sdk提示 This class was deprecated in API level 13.

q2390183798的专栏 1625

在Activity中使用LocalActivityManager

最近自己在项目时候,是这样的,我们可能很多对ViewPager并不陌生,viewPager大部分是加载多个view,而我这项目是viewpager加载多个activity,那么就要把activity转换成view对象,Android已经给我们封装了api,LocalActivityManager类是管理activity的,然后通过startActivity(String id,Intent int

WLK98283的博客 701

Android LocalActivityManager的用法

Android LocalActivityManager的用法   在开发中会碰到在一个activity中的局部(或者是activity的Fragment中)显示其他的activity 的内容,这时就用到了LocalActivityManager类。   假设这个容器是一个LinearLayout,id是linearContainer, Activity中获取视图:           L...

weixin_30646505的博客 400

LocalActivityManager的内部机制

LocalActivityManager内部机制的核心在于,它使用了主线程对象mActivityThread来装载指定的Activity。注意,这里是装载,而不是启动,这点很重要。 所谓的启动,一般是指会创建一个进程(如果所在应用进程还不存在)运行该Activity,而装载仅仅是指把该Activity作为一个普通类进行加载,并创建一个该类的对象而已,而该类的任何函数都没有被运行。 LocalA

Geek马走日 905
上一篇: Android Fragment的使用
下一篇: android如何让service不被杀死
stonenotes123
博客等级 码龄15年 30粉丝 176原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值