我正在使用Flutter开发应用程序,并且在该应用程序中,我想使用图像。
因为如果图像尺寸不正确,图像会增加应用程序的大小,如果图像看起来不佳,也会破坏应用程序。
我不担心分辨率,因为我的目标是最高的显示dpi并为所有较低的屏幕生成,但是问题在于确定图像尺寸
我可以使用相同的dpi获得大图像或小图像。颤动数用于确定屏幕中元素的大小,该数字可能意味着不同设备的像素长度不同,并且未给出应用中卡的大小,因此无法确定图像大小。
如何确定要用于App中给定元素的图像的大小?
我将知道要使用我的图像的项目的宽度和高度,而不是像素长度或任何物理单位,但是如何确定在所有设备上看起来都很好的图像大小?
要确定size,您可以根据屏幕的宽度和高度调整大小,这可以使用MediaQuery类来实现。例如:
double width = MediaQuery.of(context).size.width*0.1 //for 10 % width
double height = MediaQuery.of(context).size.height*0.1 //for 10 % width
如果谈论分辨率,则为分辨率,在资产文件以及资产文件夹本身的2x文件夹和3x文件夹中添加相同的图像或资产。
Flutter框架根据分辨率选择正确大小的资产。
供您参考,请参阅Official Documentation.