1

我试图找出在ImageView. 我想我可以从资产中加载位图。但我不知道如何调整它的大小。当它从XML文件中加载它时,它会从 3 个不同的位图中选择 1 个,每个位图的大小都不同。

我不知道如何确定要使用的位图大小。我知道如何获取视图的宽度和高度,但不是整个屏幕。有没有办法获得屏幕分辨率?

所以我知道如何设置 a 的位图属性ImageView,但我找不到任何用于缩放的东西。有没有办法对其进行缩放,或者我需要一个针对不同屏幕尺寸的单独位图?

这看起来应该很简单,但是变成了非常复杂的东西,

有没有办法获得屏幕分辨率?我可以缩放ImageView显示的位图吗?有没有更简单的方法来做到这一点?

4

1 回答 1

2

您在这里有很多问题,我不清楚您实际上要做什么,但是您最后提出的问题的答案是:

“有没有办法得到屏幕分辨率?”

当然...

getWindowManager().getDefaultDisplay().getWidth()
getWindowManager().getDefaultDisplay().getHeight()

“我可以缩放 ImageView 显示的位图吗?”

ImageView 只是一个容器,因此如果您设置它的宽度和高度,然后将位图加载到其中,它们将缩放到该宽度和高度。

如果您将其 layout_width 和 layout_height 设置为 towrap_content而不是特定尺寸,那么它将符合图像的任何尺寸(并随着加载不同的位图而增长和缩小)。如果您担心不同的屏幕,您需要将图像放入不同的文件夹(具有相同的名称),用于不同的分辨率设备,根据此处的文档:http: //developer.android.com/guide/practices/screens_support .html

位图可以以任何您喜欢的方式手动缩放,也可以使用矩阵进行缩放。这有点复杂,因此,在您澄清您的答案并表达对此的实际需求之前,我不会冒险给出示例。

于 2012-06-08T06:39:04.437 回答