`
chan.d
  • 浏览: 33029 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

在一个Activity的一部分中显示其他Activity

阅读更多
总的来说,实现“如何在一个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的时候就不用担心摆放等问题了。
分享到:
评论

相关推荐

    android 在非activity类中显示界面

    这就引出了一个需求:如何在非Activity类中显示界面。Android系统提供了一些机制来支持这种场景,主要涉及异步操作、回调和跨线程通信。 首先,我们要理解Android应用的主线程(UI线程)是专门用于处理用户界面更新...

    从一个activity跳到fragment,再从fragment跳到activity

    在Android应用开发中,页面间的跳转是用户体验的重要组成部分。标题和描述中提到的情况涉及到Activity与Fragment之间的交互,这是Android UI设计中常见的场景。本文将深入探讨如何实现从一个Activity跳转到Fragment...

    很好的页面框架 只用一个activity

    在传统的Android开发中,每个页面通常对应一个Activity,这可能导致应用中存在大量的Activity实例,增加内存消耗和管理复杂性。而使用单一Activity架构,可以减少Activity的数量,提高应用性能。这种设计通常结合...

    使用ViewModel解决多个Activity数据共享问题(Kotlin版)

    在Android应用开发中,尤其是使用Kotlin作为主要编程语言时,如何有效地在多个Activity之间共享数据是一个常见的挑战。`ViewModel`是Android架构组件之一,它为了解决这个问题提供了优雅的解决方案。本文将深入探讨...

    同时启动两个Activity测试

    在标准模式下,每次启动Activity都会创建一个新的实例,而在其他模式下,系统可能会重用已存在的Activity实例,从而影响Activity的生命周期。 在尝试同时启动两个Activity时,通常会涉及到Intent对象,Intent用于...

    安卓开发观察者模式应用-一个service通知多个activity更新ui的实现

    在给定的场景中,我们将讨论如何利用观察者模式来实现一个Service通知多个Activity更新UI的功能。 首先,我们需要理解Service和Activity之间的交互方式。在Android中,Service是后台运行的组件,而Activity是用户...

    Activity显示切换多个Fragment

    `Activity`作为应用程序的基本单元,负责处理用户交互和展示UI,而`Fragment`则可以看作是`Activity`的一部分,它有自己的UI和生命周期,可以在多个`Activity`之间复用。本篇文章将深入探讨如何在`Activity`中有效地...

    demo教你如何实现同一个activity加载不同的fragment 同时实现activity和fragment之间的数据交换

    在Android应用开发中,Fragment是UI组件的一部分,它可以在Activity中动态添加、移除或替换。Fragment提供了更灵活的方式来组织用户界面,特别是在大屏幕设备上,可以实现多面板布局。本教程将通过一个名为"test2"的...

    09-02 eventbus3.0从第二个activity发送消息给第一个activity,并后台更新第一个activity的UI

    在给定的标题和描述中,我们关注的是如何使用 EventBus 3.0 从第二个 Activity 发送消息到第一个 Activity,并在后台更新第一个 Activity 的用户界面(UI)。 ### EventBus 3.0 概述 EventBus 是由 GreenRobot 开发...

    多个Activity共存并左右切换

    在标签中提到的"Android ViewGroup",这是Android视图系统的一部分,它是一个可以包含其他View或ViewGroup的容器。例如,一个LinearLayout或RelativeLayout就是一个ViewGroup,它们可以用来组织和布局应用的UI元素。...

    Current Activity_v1.5.2-play.rar

    每个Activity都有一个唯一的包名和类名,包名用于区分不同的应用,类名则代表了具体的Activity实现。通过《当前Activity》这款应用,开发者无需深入代码就能快速获取这些信息,提高工作效率。 首先,我们来解析一下...

    Android应用:Intent打开另外一个Activity,Intent拨电话,Intent在2个Activity间传递参数

    首先,让我们讨论如何使用Intent打开另一个Activity。在Android中,Activity是用户界面的基本单元,当用户与应用交互时,可能会在不同的Activity之间切换。创建Intent并指定目标Activity即可实现这一操作。以下是一...

    如何启动另外一个应用的任意Activity

    在Android系统中,启动另一个应用的任意Activity是开发者经常遇到的操作。这涉及到Android的Intent机制,它是Android系统中实现组件间通信(IPC)的主要方式。本文将深入探讨如何通过Intent来启动其他应用的Activity...

    同一个任务中的活动(Activity),分别隶属于两个进程

    在Android系统中,一个应用程序通常默认运行在一个单独的进程中,但是开发者可以根据需求将不同的组件,如Activity,分配到不同的进程中。本话题将深入探讨“同一个任务中的活动(Activity),分别隶属于两个进程”...

    Activity生命周期完美呈现

    在"Activity生命周期完美呈现"的项目中,开发者可以创建一个简单的Activity,通过Log输出或可视化的方式,展示Activity在不同状态间的转换,这样可以直观地看到每个生命周期方法的调用顺序,加深理解。 总之,理解...

    Android仿淘宝一个Activity实现多个ListView

    在实际应用中,我们经常需要根据不同的数据类型或者界面需求,实现一个Activity中包含多个不同布局的ListView。例如,淘宝App就是一个很好的例子,它的商品详情页面会包含商品图片、描述、评价等多个部分,每个部分...

    LauncherActivity 开发启动Activity的界面

    在Android应用开发中,`LauncherActivity`是一个特殊类型的`Activity`,它扮演着应用程序的主入口点角色。用户通常通过`LauncherActivity`首次与应用交互,因此它的设计和实现至关重要。`LauncherActivity`通常显示...

    底部导航和四个activity切换的框架

    它允许开发者在一个Activity中嵌套多个小的Activity或Fragment,每个小的视图对应一个Tab。然而,由于`TabHost`在新版本的Android设计规范中逐渐被`BottomNavigationView`所取代,所以我们现在更推荐使用`Bottom...

    activity5.22中文版api+表

    Activity API是Android SDK的一部分,它允许开发者创建、管理和控制应用中的用户交互。在API 5.22版本中,可能会包含各种方法和类,用于初始化Activity、处理生命周期事件(如onCreate(), onStart(), onResume()等)...

    传智播客activity教学视频

    一个Android应用通常由多个Activity组成,每个Activity负责显示应用程序的一部分UI,并处理用户的输入事件。 ### Activity生命周期 了解Activity的生命周期对于编写可靠的Android应用程序至关重要。Activity的生命...

Global site tag (gtag.js) - Google Analytics