android:使用ActivityGroup嵌入活动

2024-02-25

我正处于构建应用程序的概念化/设计阶段,但遇到了一些障碍。本质上,我正在寻找一种将一个活动嵌入到另一个活动的 UI 中的方法,类似于 TabHost/TabActivity 的方式。屏幕顶部将有一个窗口,其中包含其他活动,其下方将是独立于上述活动的按钮和控件,并且应始终可见。用户将能够从窗口中的一个活动导航到另一个活动,而不会对以下控件造成任何更改。

在研究这个问题时,我遇到了 ActivityGroup,它看起来很有用,但是我将如何实现它呢?有人有 ActivityGroup 的经验或有其他想法吗?


是的,您将实现一个 ActivityGroup,它将成为其他 Activity 的容器。当用户单击其中一个按钮时,您将获得对 LocalActivityManager 的引用,并使用它来启动和嵌入内部活动。像这样的东西:

LocalActivityManager mgr = getLocalActivityManager();

Intent i = new Intent(this, SomeActivity.class);

Window w = mgr.startActivity("unique_per_activity_string", i);
View wd = w != null ? w.getDecorView() : null;

if(wd != null) {
    mSomeContainer.addView(wd);
}

请注意,使用此方法可能非常复杂,因为除非焦点恰到好处,否则按下硬件按钮(如菜单按钮)只会触发 ActivityGroup 上的事件,而不会触发内部 Activity 的事件。将内部活动添加到容器视图后,您必须找到某种方法来聚焦内部活动,此时事件将在内部活动中发生并传播到容器活动。

这是可以做到的,我已经做到了……而且有效。只是比我想象的要复杂一点。

无论如何,我通过查看 TabHost 代码获得了大部分信息,可以找到here http://android.git.kernel.org/?p=platform/frameworks/base.git;a=blob_plain;f=core/java/android/widget/TabHost.java;hb=HEAD

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

android:使用ActivityGroup嵌入活动 的相关文章

随机推荐

  • 这个空白隐藏在哪里?

    我有一个字符向量 它是一些 PDF 抓取的文件pdftotext 命令行工具 一切都 幸福地 排列得很好 然而 该向量充满了一种空白类型 无法使用正则表达式 gt test 1 Address Clinic Information Stor
  • whereis python 和 python --version 之间的矛盾

    在一个 Python 环境中 我输入whereis python 并得到以下信息 python usr bin python2 6 usr bin python2 6 config usr bin python usr lib python
  • 如何通知用户NPM包版本更新?

    我用 Node JS 编写了一个 CLI 工具并发布到NPM https www npmjs com package rapid react 每次在终端中运行时 我都需要通知用户可用的新版本及其类型 补丁 次要 主要 以便他 她可以相应地更
  • 如何计算时间复杂度为 O(n log n) 的 XOR(二元)卷积

    是按位异或运算 我认为Karatsuba算法可能可以解决该问题 但是当我尝试在Karatsuba算法中使用XOR代替 时 很难得到子问题 The 卷积定理 https en wikipedia org wiki Convolution th
  • 为什么在 Python 中处理已排序数组并不比处理未排序数组快?

    在这篇文章中为什么处理排序数组比处理随机数组更快 https stackoverflow com questions 11227809 why is processing a sorted array faster than an unso
  • flink kafka生产者在检查点恢复时以一次模式发送重复消息

    我正在写一个案例来测试 flink 两步提交 下面是概述 sink kafka曾经是kafka生产者 sink stepmysql接收器是否扩展two step commit sink comparemysql接收器是否扩展two step
  • 如何构建多部分 MIME 请求并使用 AngularJS 的 $http 方法 POST 它?

    如何构建多部分 MIME 请求并使用 AngularJS http 方法将其 POST 到服务器 API 我正在尝试将图像上传到服务器 图片的二进制数据应该是body使用 POST 方法和多部分 MIME 完成请求 其余查询参数可以作为查询
  • 使用简单 Json 库提取 JSON 数组

    我的 JSON 数据如下所示 Users Username Admin1 Password 123 Username Admin2 Password 456 Username Admin3 Password 789 我正在尝试提取所有用户名
  • Java:如何从线程返回中间结果

    使用Java 7我正在尝试构建一个监视数据存储 某些集合类型 的观察程序 然后在某些点从其中返回某些项目 在本例中 它们是时间戳 当时间戳经过当前时间时 我希望将其返回到起始线程 请参阅下面的代码 Override public void
  • 通过 LDAP 连接到 Active Directory

    我想使用 C 连接到我们的本地 Active Directory 我发现了这个很好的文档 http ianatkinson net computing adcsharp htm 但我真的不知道如何通过 LDAP 连接 你们有人能解释一下如何
  • 如何限制角度摘要仅影响/重新渲染一个组件/指令

    我正在开发一个有角度的应用程序 网站 现在才意识到 每当触发模型更改 摘要时 它都会导致整个页面重新渲染 这看起来既浪费又缓慢 有没有办法导致 限制摘要仅影响它所使用的指令 控制器 例如 如果我有一个带有 interval 的 时钟 指令来
  • 重新加载 Web 项目时 Visual Studio 2019 值未落在预期范围内

    我刚刚升级到VS2019 Pro 我正在设置新的溶液过滤器功能允许我仅使用我正在处理的项目的依赖项来部分加载我的解决方案 并在加载 或重新加载 ASP Net MVC Web 项目时遇到问题 看这里 https youtu be u5Yau
  • auth.getAccessTokenAsync 的 Outlook 插件错误代码 13005

    所以我尝试在 Outlook 插件中使用单点登录 我已在以下位置注册了我的应用程序https apps dev microsoft com https apps dev microsoft com 在我的清单中我有
  • Rails:强制用户在保存父对象之前创建子对象

    我是 Ruby on Rails 的初学者 目前 我遇到以下问题 我有一堂课Game有一系列图片和句子交替出现 我希望创建新的用户Game需要给出一张起始图片或句子 如果他不这样做 我不想将新创建的游戏保存到数据库中 class Game
  • subl 在这里做什么?

    所以 我正在使用 gcc S O2 m32 编译成汇编程序 void h int y int x x y 1 f y f 2 它给了我以下内容 file sample c text p2align 4 15 globl h type h f
  • 有没有办法直接在类属性中使用bootstrap 5自定义颜色?

    就像我们一样 span class text primary some text span 我想知道是否有办法做到 span class text red 300 some text span red 300 是 bootstrap 5 自
  • 共享常量池?

    与 Java 虚拟机相比 Dalvik 虚拟机获得 共享常量池 意味着什么 这是什么好处 Dalvik 机器如何实现这一点 Java 虚拟机将每个类存储在单独的 class 文件中 每个类文件都有一个常量池 用于存储字符串 方法名称 类名称
  • @staticmethod 在 CPython 或 Micropython 中保存任何内存吗?

    在回答最近的问题时 我重复了我的假设 即使用的一个原因 staticmethod是为了节省内存 因为静态方法只被实例化一次 这个断言可以在网上很容易找到 例如here https newbedev com what is the advan
  • 无法启动mongos

    我正在尝试设置简单的分片 在没有任何副本集的单个主机上 但是我无法继续下去 因为当我尝试启动 mongos 时会发生这种情况 C gt mongos configdb localhost 27010 port 27011 I get Bad
  • android:使用ActivityGroup嵌入活动

    我正处于构建应用程序的概念化 设计阶段 但遇到了一些障碍 本质上 我正在寻找一种将一个活动嵌入到另一个活动的 UI 中的方法 类似于 TabHost TabActivity 的方式 屏幕顶部将有一个窗口 其中包含其他活动 其下方将是独立于上