【问题标题】:How to manage images resolution in flutter app for both android and ios?如何在 Android 和 ios 的颤振应用中管理图像分辨率?
【发布时间】:2021-08-06 15:58:58
【问题描述】:

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

如果我使用所有这些大小,应用程序的大小将非常庞大并且难以管理。否则,如果我只为不同的设备尺寸使用 1x 尺寸,它将被缩小或模糊。

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

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

【问题讨论】:

    标签: flutter flutter-layout


    【解决方案1】:

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

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

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

    获取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;
    

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

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

    【讨论】:

    • 我的问题是“如果我使用 80x80 尺寸的图像到 30x30 或 100x100 尺寸的图像到 200x200”,那么会缩小还是模糊?我的观点是针对每张图片,我的 UI/UX 设计师需要为我提供哪种尺寸的图片?
    【解决方案2】:

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

    【讨论】:

    • 我的问题与减小尺寸无关。请在其他答案中查看我的 cmets
    猜你喜欢
    • 2019-07-04
    • 1970-01-01
    • 1970-01-01
    • 2018-03-13
    • 2012-01-29
    • 1970-01-01
    • 1970-01-01
    • 2019-07-01
    • 2011-09-12
    相关资源
    最近更新 更多