gpt4 book ai didi

Android位图坐标奇怪

转载 作者:行者123 更新时间:2023-11-30 03:27:11 25 4
gpt4 key购买 nike

我正在尝试为 android 开发自定义图像显示应用程序。到目前为止,我能够加载位图并将其显示在屏幕上。我想将用户 View 集中在图像的中心。为此,我一直在使用

Bitmap bmp = BitmapFactory.decodeResource(...)
float offsetX = (androidScreenHeight - bitmapFactoryOptions.outHeight) / 2
canvas.drawBitmap(bmp, offsetX, 0, myPaint)

渲染它。据我所知,androidScreenHeight 是正确的。我正在使用具有 1280x800 屏幕的三星笔记本,这是我为此获得的值(value)。我的图像是 1920 像素宽,所以每边的偏移量应该是 560,实际屏幕的中间是 800。看这张图:

! http://imgur.com/a2DGmjG

offsetX 的值在 560 处是正确的。所以我知道至少那部分工作正常。但是我得到的不是上面的,而是这样的:

! http://imgur.com/jtHw926

(这些不是实际图像)

我不确定发生了什么。 pixels 在我的 android 设备上与在我的计算机上是否以某种方式不同对待?我知道每个像素都会占用不同的大小,因为 dpi 不同。但是 560 像素的偏移量应该在每个屏幕上提供相同的偏移量,而不管各个像素的大小。知道这里发生了什么吗?

最佳答案

(将我的评论提升为正确答案)

BitmapFactory 将在该文件夹的 dpi(假设您有一个)和设备 dpi 之间执行缩放。将位图放在“drawable-nodpi”中将禁用自动缩放,但要小心你真的想这样做(因为自动缩放通常是有用和可取的)。

关于Android位图坐标奇怪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18061301/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com