LocalActivityManager如何在一个Activity的一部分中显示其他Activity
首先要使用该方法,页面必须继承ActivityGroup。
总的来说,实现“如何在一个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的时候就不用担心摆放等问题了。
LocalActivityManager如何在一个Activity的一部分中显示其他Activity的更多相关文章
- 如何将同一个APP中的不同activity在Recent(最近任务)中显示?
需求描述 在应用Application1中存在A.B两个activity,当在应用启动了A.B activity,点击Recent键,如何让A.B两个activity都显示在Recent界面(最近任务 ...
- XML文件解析并利用SimpleAdapter将解析结果显示在Activity中
首先创建一个实体类 Mp3Info用来存储解析的XML文件中的内容: public class Mp3Info implements Serializable{ private static fina ...
- 在一个activity中销毁指定activity
通过静态变量的方法: 1.在Aactivity中设置一个Activity静态变量 static Activity activity; 2.在onCreate中: activity=this: 3.在B ...
- Android 高级UI设计笔记17:Android在非UI线程中显示Toast
1. 子线程的Toast怎么显示不出来? 因为Toast在创建的时候会依赖于一个Handler,并且一个Handler是需要有一个Looper才能够创建,而普通的线程是不会自动去创建一个Looper对 ...
- 基础学习总结(八)--Intent中显示意图和隐式意图的用法
Intent(意图)主要是解决Android应用的各项组件之间的通讯.Intent负责对应用中一次操作的动作.动作涉及数据.附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组 ...
- 【Android进阶】为什么要创建Activity基类以及Activity基类中一般有哪些方法
现在也算是刚刚基本完成了自己的第一个商业项目,在开发的过程中,参考了不少人的代码风格,然而随着工作经验的积累,终于开始慢慢的了解到抽象思想在面向对象编程中的重要性,这一篇简单的介绍一下我的一点收获. ...
- Android中显示和隐式Intent的使用
显示启动activity ...
- 在WPF中显示动态GIF
在我们寻求帮助的时候,最不愿意听到的答复是:很抱歉,在当前版本的产品中还没有实现该功能... 在WPF中显示动态的GIF图像时便遇到了这样的问题,WPF中强大的Image控件却不支持动态的GIF(其只 ...
- Android学习记录(7)—Intent中显示意图和隐式意图的用法
Intent(意图)主要是解决Android应用的各项组件之间的通讯. Intent负责对应用中一次操作的动作.动作涉及数据.附加数据进行描述,Android则根据此Intent的描述,负责找到对应的 ...
随机推荐
- PHP继承及实现
php学习已经有一段时间了,来对之前的知识积累做个记录. php实现单继承和多实现.单继承: 一个类只能有一个extends 抽象类 ,多实现 :一个类可以implements 多个接口 举个简单的栗 ...
- vue分页练习
<!doctype html> <html> <head> <meta charset="UTF-8"> <title> ...
- 【ABAP系列】SAP webservice HTTP框架出错 404错误
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP webservice H ...
- tf.nn.conv2d卷积函数之图片轮廓提取
一.tensorflow中二维卷积函数的参数含义:def conv2d(input, filter, strides, padding, use_cudnn_on_gpu=True, data_for ...
- Learning OSG programing---Multi Camera in one window 在单窗口中创建多相机
在学习OSG提供的例子osgCamera中,由于例子很长,涉及很多细节,考虑将其分解为几个小例子.本文介绍实现在一个窗口中添加多个相机的功能. 此函数接受一个Viewer引用类型参数,设置图形上下文的 ...
- java包装类,自动装箱,拆箱,以及基本数据类型与字符串的转换
package cn.learn; import java.util.ArrayList; /* 包装类 java.lang中,基本运算类型效率高 装箱:把基本类型数据包装为包装类 1.构造方法 In ...
- PHP学习:set_time_limit,max_execution_time,sleep
set_time_limit 设置脚本最大允许执行时间,可以在php脚本中使用, 参数为秒,如果为0,表示无时间限制: set_time_limit(seconds); max_execution_t ...
- CentOS利用Lua访问Redis
首先确保你编译的Lua是支持链接外部动态链接库的.因为在对Redis进行访问时是需要使用socket通信的, 而这依赖于外部的C语言写的动态连接库. 首先,这里先下载Redis的Lua客户端访问包re ...
- asp.net ajax的使用
参考:https://www.cnblogs.com/acles/articles/2385648.html https://www.cnblogs.com/xujingyang/p/5560646. ...
- antd desgin vue 报错 Warning: Each record in table should have a unique `key` prop,or set `rowKey` to an unique primary key.
警告:表的数据源中的每条记录都应该有一个唯一的“key”道具,或者将表的“rowKey”设置为一个唯一的主键, 只需要添加 :rowKey="record => record.id&q ...