繁体   English   中英

如何在 flutter 应用程序中管理 android 和 ios 的图像分辨率?

[英]How to manage images resolution in flutter app for both android and ios?

在原生 ios 和原生 android 中,可以使用 1x、2x、3x 图像和 mdpi、xdpi 等图像尺寸。 对于 flutter 应用程序,如何管理这个?

如果我使用所有这些尺寸,应用程序的大小将会很大并且也很难管理。 否则,如果我仅对不同的设备尺寸使用 1x 尺寸,它将被缩小或模糊。

谁能建议我解决这个问题?

更新的问题:对于每个图像,我可以要求我的 UI/UX 设计师为 ios 和 android 提供哪些尺寸?

如果您不使用互联网,请将 png 或 jpg 转换为 webp,因为它的大小比其他文件小。 这对您来说可能是一个很好的解决方案。

您有离线图像或从网络加载。 您只需要在屏幕尺寸上管理它。

您可以为图像或父小部件提供自定义高度和宽度,以显示相应的屏幕分辨率。

这是获取宽度和高度的不同方法。

获取width很容易,但height可能很棘手,以下是处理height的方法

// Full screen width and height
double width = MediaQuery.of(context).size.width;
double height = MediaQuery.of(context).size.height;

// Height (without SafeArea)
var padding = MediaQuery.of(context).padding;
double height1 = height - padding.top - padding.bottom;

// Height (without status bar)
double height2 = height - padding.top;

// Height (without status and toolbar)
double height3 = height - padding.top - kToolbarHeight;

您可以使用 width /2/3作为图像的宽度,也可以使用相同的高度。 它也适用于 Android、iOS 或其他平台。

如果您有任何问题,请告诉我。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM