问题标签 [android-bitmap]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1705 浏览

android - HPROF 之后我的应用程序中的巨大字节 []

有时,尤其是在我的应用程序中实现新功能时,我会使用 DDMS + HPROF 来分析内存和堆使用情况。由于该应用程序似乎没有任何性能-ANR 问题并且一切运行顺利,最初我并不关心它 - 但现在,我看到它的大小几乎总是相同,我想知道它到底能做什么是。

每次运行 HPROF 时,我都会检查泄漏嫌疑人选项卡。总会有一个android.graphics.Bitmap实例占用所有已用堆的大约 25%。

泄密嫌疑人

我想进一步了解那是什么,所以我打开了支配树,看到了这个:

支配树

所以基本上有一个巨大的byte[]实例保留了大量的堆,并且永远不会被释放。根据this,我复制了 that 的值byte[],将其转储到.data文件中,用 Gimp 打开,结果如下:

PNG

所以基本上,它看起来像 PNG 图像的“alpha(0)”部分。考虑到以下事实:

  • 我所有的图像文件的大小都小于 8K
  • 只有其中一些是PNG - 剩下的我能够转换为JPG,我做到了
  • 不管我是否添加更多图像,从应用程序开始(4 个月前)开始,图像的大小byte[]始终大致相同
  • 为了调试它,我尝试从and文件夹中删除任何图像文件并在没有任何可绘制资源的情况下运行应用程序,并且仍然存在drawabledrawable-xxxbyte[]
  • 我删除了几乎所有的布局,只保留了基本的功能和相同的结果
  • 支配树中,根类是android.graphics.Bitmap

任何人都知道这是什么byte[],如果我应该做些什么来释放它?

任何帮助表示赞赏!

0 投票
1 回答
154 浏览

android - 如何从 URL 下载图像?

我使用这段代码:

应用程序在以下位置崩溃:

有了这样的堆栈跟踪;

** 获取目录图像 **

据我了解,它找不到 ImageIO。我知道 android 没有,但所有使用 ImageIO 的函数都在另一个 java 包中,只是作为 lib 添加到应用程序中。android 应用程序仅适用于字节数组。

那么有什么问题呢?以及如何以另一种方式从 url 加载 .jpg 图像?异步类会不会有问题?

0 投票
2 回答
1452 浏览

java - 如何理解位图照片是垂直的还是水平的?

我在google和stackoverflow上没有找到我真正需要的东西,我想了解我刚刚从相机拍摄的照片是垂直的还是水平的,代码:

当我在手机上拍摄照片时 imageHeight 和 imageWidht 总是相同的,我的意思是,如果我拍摄垂直或水平的照片,它总是 960x1280,我想水平照片尺寸为(宽度:960 高度:1280),垂直为(宽度:1280 高度:960) 谢谢

0 投票
2 回答
1987 浏览

android - 为什么布局设置为match_parent,显示宽度为0

我有以下代码:

让我困惑的是为什么是LAYOUT WIDTH0。在 XML 中,我将布局宽度设置为match_parent,高度设置为wrap_content

如何获取Bitmap下面正在解码的内容并填写宽度 fill_parent 以上的布局?我使用 LayoutParams 吗?

XML 代码是这样的:

我想要完成的是雷曼术语,采用布局并用背景图像填充它,并使用像素来获取 X 和 Y 坐标。

0 投票
0 回答
295 浏览

java - 将 LibGdx 图像转换为可接受的 Android 图像格式

我需要将 com.badlogic.gdx.scenes.scene2d.ui.Image 类型的 java LibGdx 图像转换为 android.graphics.Bitmap”类型的图像。我需要这个,因为我想使用 Android ACTION_SEND Intent 分享这张图片。
有什么方法可以将 LibGdx Image 转换为 Android Bitmap 或 java BufferedImage?

0 投票
1 回答
2169 浏览

android - 在 api 23 上启动应用程序时内存不足

当我开始在 API 23 中的 Galaxy S3 上测试我的应用程序时,我有点失望。当我启动启动画面时出现内存不足错误!哇。

我的应用程序在 API 10 到 API 18 下运行良好。在 Splashscreen 活动中,我有 4 个图标和背景图像(1900*1200px ~ 400kb)。您是否有想法运行我的应用程序而不会出现内存不足的问题?

0 投票
1 回答
478 浏览

android - 裁剪图像,仅显示位于另一张图像后面的部分

我想获得我们可见的图像部分。在第一个图像上还有另一个图像。因此,从该图像中,可以看到第一张图像的某些部分。我只想要那部分。我将向您展示它的样本和我期望的最终输出。

要裁剪的图像

面具

在此处输入图像描述

在此处输入图像描述


我知道如何裁剪成椭圆形。但是在这里,上面示例中使用的模板实际上可能会有所不同,因此我需要根据模板 /mask 裁剪该图像。我怎样才能做到这一点。任何想法?

0 投票
1 回答
261 浏览

android - 将 SDCard 上的大图像加载到自定义列表视图中的小图像视图中

我有一个像这样的自定义列表视图。在我的应用程序中,我可以打开相机并将照片拍摄到 SD 卡上。我想在小图像视图中显示拍摄的照片。但我收到以下消息:位图太大而无法上传到纹理中(2448x3264,max=2048x204) 我如何在图像视图中显示这样的图像,例如布局宽度/高度为 90x90dip 和 50X50dip?

提前致谢

编辑1:

0 投票
1 回答
129 浏览

android - 如何使用 Canvas.clipRects 突出显示面部矩形?

我有一个多面的位图。我想突出显示每张脸,使得脸部矩形具有原始颜色,并且该区域的其余部分被涂黑。

我做了类似的事情,

但这会使我的整个图像变黑。我有点知道原因,但无法找到解决方案。

0 投票
1 回答
1765 浏览

android - Android:使用位图时出现内存不足错误

我的应用程序经常出现内存不足错误。我相信这与我从服务器下载的位图有关。任何想法为什么?