0

我试图将一些图像视图从一项活动发送到另一项活动,我还看到了与此类似的其他问题以及有关将图像视图的 ID 从一项活动发送到另一项活动的建议,但在我的情况下,我是发送多个图像视图,并且这些图像视图是从更大的图像视图动态创建的,即我正在从更大的图像视图创建 12 个小图像视图, Bitmap resized=Bitmap.createBitmap(bmp, 0, 0, width, height);方法是使用所有这些图像视图的组合将给我返回原始更大的图像视图,并希望将它们全部传递给下一个活动。因此,我想要一些关于我正在遵循的程序的建议,以及我怎样才能以更好的方式做到这一点。谢谢 !

  • 编辑:我正在使用相机拍摄照片,然后首先将其分配给一些图像视图,然后我想将此图像视图分成十二个小部分并动态分配给 12 个图像视图,并在下一个活动中清楚地显示它们中的每一个。
4

2 回答 2

1

你永远不应该直接发送位图 - 只需将 URI 或 URL 或文件名传递给下一个 Activity 并从那里加载它......

于 2013-07-11T11:14:48.077 回答
1

我还需要实施类似的案例。

首先,您不能通过 Intents 发送大位图对象。它使应用程序崩溃,因为我相信 Intent 的容量较小,例如 1mb。

您有以下选择:

1-通过意图附加发送图像文件路径。

2-将图像文件路径保存在静态字段中并在其他活动中读取。

3-将位图保存到文件并使用选项(1,2)发送其路径,并在新活动中删除图像文件。

4-将图像位图放在位图的静态数组列表中,然后在其他活动中读取它。

5-将图像文件名放入字符串的静态数组列表中,然后在其他活动中读取它。

基本上,您必须在新活动中重新创建它们,或者将它们保存在静态字段中,然后再阅读。

也许您可以实现更复杂的解决方案,例如,如果应用程序具有 sdcard 写访问权限,则将其写入文件,否则使用静态数组列表将其保存在内存中。

我所做的是,当 PictureCallback 获取图像数据时,我将其保存在 sdcard 上并将路径返回到其他活动。

于 2013-07-11T11:29:40.540 回答