Android:根据屏幕尺寸不同显示不同的图片

3

有没有一种方法可以根据屏幕大小选择不同的Android图片?根据文档和我的测试,图片必须放置在像drawable、drawable-mdpi、drawable-hdpi等文件夹中。

然而,这些文件夹与屏幕dpi相关,而不是屏幕大小。布局文件夹用于处理不同的屏幕大小,但它们不允许您在其中存储图像,只能存储xml文件。

因此,如果我在两个具有相同dpi但不同屏幕大小的设备上运行我的应用程序,则从相同的drawable文件夹中选择相同的图像。我真正想要的是,在更大的屏幕上选择更大的图像,在更小的屏幕上选择更小的图像。

感谢您的帮助。


你可以在这里找到一些帮助:https://dev59.com/K2Qn5IYBdhLWcg3wmILY#16910589 - Bhavesh Jethani
2个回答

2

没错,这就是Android的工作原理,通过将不同尺寸的图片保存在特定的文件夹(l、m、h和xh-dpi)中。

你遇到了什么问题?

你想要为所有屏幕分辨率保留图像?这样太多了。你能更具体地描述一下你想实现什么吗?

如果你在layouts.xml中遇到问题,只需检查:

android:scaleType="..."

我有一个标志图像。在大屏幕上,我想选择较大的图像,在小屏幕上选择较小的图像。我想我可以只使用一个较大的图像,并让Android将其缩小到较小的屏幕,但我不确定如何做到这一点。 - Johann
像goodm所说的那样,将不同的图像放在不同的图像文件夹中。Android会自动选择与当前屏幕大小相对应的图像。 - Wottah
要缩放图像,您可以在xml文件中使用scaleType。如果需要更精确的缩放,请使用9-path(android -> tools -> draw9patch)。 - goodm

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接