我的应用程序中有几张图像。我认为我可以在 9patch 中提供所有按钮,但是如果显示尺寸发生变化,则必须调整一个中央图像的大小。所以我想知道在每种显示尺寸下获得正确图像尺寸(和纵横比)的最佳方法是什么。
一个简单的解决方案是:
LayoutParams lp = indicator.getLayoutParams();
lp.width = (int) (disW-(disW*0.04));
lp.height = (int) (disW-(disW*0.04));
indicator.setLayoutParams(lp);
如果 displayWidth 为 320px,我的图像的宽度和高度将为 307px。除了缩放图像的质量之外,这工作得很好。但是图像质量可能很差,因为模拟器设备被拉伸了……我很快就会在真实设备上测试它。
另一种可能性是以编程方式缩放图像。为此,我使用了本教程。
但我可以弄清楚如何保持纵横比。这个问题的最佳解决方案是什么?