如何将对象数组传递给活动?

2024-05-23

我读过有关从活动传递数组和向活动传递数组的帖子,但我对如何针对我的具体情况执行此操作感到困惑。

我有一个名为 DaysWeather 的对象数组(DaysWeather[] 数组),其中对象具有多个字符串属性以及位图属性。我在某处读到,你必须使其可序列化或可解析或其他东西,但乍一看似乎很混乱。

有人能引导我走向正确的方向吗?

有没有一种简单的方法可以做到这一点?


你的对象需要实现可打包接口 http://developer.android.com/reference/android/os/Parcelable.html.

完成后,您可以创建 Parcelable 数组并将其传递给活动:

// We assume we have an array: DaysWeather[] input;
Parcelable[] output = new Parcelable[input.length];
for (int i=input.length-1; i>=0; --i) {
    output[i] = input[i];
}

Intent i = new Intent(...);
i.putExtra("myArray", output);

另请注意,当您实现 Parcelable 接口时,不要序列化完整的重对象。例如,对于您的位图,仅序列化资源 ID,并在膨胀时从资源 ID 重新创建位图。

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

如何将对象数组传递给活动? 的相关文章

随机推荐

  • 从 Facebook Account Kit 获取电话号码

    Account Kit 文档指出 如果您使用 AccountKitActivity ResponseType TOKEN 开始登录会话 则可以通过调用 getCurrentAccount 来访问当前帐户的 Account Kit ID 电话
  • 设置 pyodbc 搜索 odbcinst.ini 文件的位置

    我正在尝试使用查询 ODBC 兼容数据库pyodbc in ubuntu 为此 我已经安装了驱动程序 例如 mysql odbc driver 安装后odbcinst ini在该位置创建包含配置的文件 usr share libmyodbc
  • Swift 中的 @autoreleasepool 相当于什么?

    在 Swift 中 我注意到没有 autoreleasepool 构造 尽管 Swift 确实使用了 ARC 在 Swift 中管理自动释放池的正确方法是什么 或者它是否因某种原因被删除 语法如下 autoreleasepool code
  • 从 iOS 设备向 Google App Engine 进行身份验证

    我正在开发一个 iPhone 应用程序 它使用 Google 应用程序引擎来托管后端 我需要通过 Google 进行身份验证 但我似乎无法找到从我的应用程序中执行此操作的方法 看来我要做一个UIWebView让用户登录到我从 Google
  • java.lang.NoSuchMethodError:没有虚拟方法 setTag(Ljava/lang/Object;)

    我刚刚完成使用登录和注册屏幕与齐射的代码 但在模拟器中运行时我收到此错误 java lang NoSuchMethodError No virtual method setTag Ljava lang Object Lcom android
  • 使用 Twitter Bootstrap 将 4 列变为 2 列

    我有一个 4 列流体布局 div class container fluid div class row fluid div class span3 A div div class span3 B div div class span3 C
  • pyspark:聚合列中最常见的值

    aggregrated table df input groupBy city income bracket agg count suburb alias suburb sum population alias population sum
  • 带有 CSS 过渡的 Meteor 模板

    当通过模板助手触发 CSS 转换时 Meteor 似乎会跳过这些转换 有办法解决这个问题吗 Example
  • EKS Fargate Fluent-Bit 多输出

    我正在 Fargate 上运行 K8 集群并使用 FluentBit 将日志发送到 cloudwatchhttps docs aws amazon com eks latest userguide fargate logging html
  • 是否可以限制 asyncio 中同时运行的协程数量?

    我已经使用 asyncio 编写了脚本 但发现同时运行的协程数量太大 并且经常会挂起 所以我想限制并发协程的数量 一旦达到限制 我想等待任何协程完成后再执行另一个协程 我当前的代码如下所示 loop asyncio get event lo
  • Facebook 使用开放图协议 ID 作为地点 ID 进行签到

    我用的是FB页面linter http developers facebook com tools lint url http www foodtrucksmap com facebook html验证我使用的所有元信息是否正确 根据图表网
  • Retrofit/Moshi:平台类 java.util.Date 需要显式注册 JsonAdapter

    我是 Android Retrofit 和 Moshi 的新手 我正在尝试对 API 进行 POST 调用 但在序列化方面遇到问题Date 如果您发现任何其他需要纠正的地方 请指出 因为我仍在学习 谢谢 interface ApiInter
  • iphone - 如何读取麦克风输入?

    如何从麦克风读取声音数据 我不想录制然后访问数据 我希望能够实时访问声音输入 您可以将麦克风中的声音 PCM 样本 录制到非常短的内存缓冲区 持续时间短至几毫秒 这与使用 iOS API 一样接近 实时 查看 aurioTouch 示例 了
  • 查找一个二维矩阵是否是另一个二维矩阵的子集

    最近我参加了一个黑客马拉松 我了解到一个问题 试图在 2d 矩阵中找到网格形式的模式 模式可以是 U H 和 T 并由 3 3 矩阵表示 假设我想展示 H 和 U 1 0 1 1 0 1 1 1 1 gt H 1 0 1 gt U 1 0
  • WPF:动画不流畅

    我正在制作一个动画TextBlock 60秒后增加FontSize从 8 点到 200 点 一切工作正常 除了我的动画随着文本的增长而上下移动 为什么会发生这种情况 是否可以避免这种情况 我有一个非常简单的 XAML 文件
  • 程序不等待 cin

    int x 0 string fullname float salary float payincrease float newsal float monthlysal float retroactive while x lt 3 cout
  • 什么是多维 OLAP CUBE 并给出超过 3 维的多维数据集示例

    由于我是 SSAS 的新手 一直在阅读有关多维 OLAP 多维数据集的文章 并努力理解多维数据集的概念 据说虽然术语 多维数据集 表示三个维度 但多维数据集最多可以有 64 个维度 你能解释一下这在立方体上怎么可能吗 除了 3 Dim 示例
  • 无法在 Perl 中找到 DBI.pm 模块

    我使用的是 CentOS 并且已经安装了 Perl 5 20 并且默认情况下存在 Perl 5 10 我正在使用 Perl 5 20 版本来执行 Perl 代码 我尝试使用 DBI 模块并收到此错误 root localhost perl
  • Facebook“赞”按钮回调帮助

    我正在使用此代码进行类似 facebook 的回调 问题是 如果我调用 php 脚本 例如 有人可以看到我的 javascript 并运行此页面 甚至可以向其发送垃圾邮件或在没有先点赞的情况下使用它 我的想法是 我想为每个喜欢该页面的用户提
  • 如何将对象数组传递给活动?

    我读过有关从活动传递数组和向活动传递数组的帖子 但我对如何针对我的具体情况执行此操作感到困惑 我有一个名为 DaysWeather 的对象数组 DaysWeather 数组 其中对象具有多个字符串属性以及位图属性 我在某处读到 你必须使其可