【问题标题】:CodenameOne - Using 1x 2x 3x images of XCode Assets.Casset catalog in CN1 projectCodenameOne - 在 CN1 项目中使用 XCode Assets.Casset 目录的 1x 2x 3x 图像
【发布时间】:2021-08-03 19:55:34
【问题描述】:

我的 CodenameOne 应用需要为某些按钮定制图标。必须使用图像。

我的应用程序的 iOS 版本以 1x 2x 3x 格式适当地提供了这些图像。

看来CN1的多图系统会受益于我的应用Android版本的图片资源。

确实,我认为 XCode 1x、2x、3x 图像可能会导致“最接近的替代方案”的奇怪分配,正如 CN1 开发指南中所述。

Table 4. Densities
Constant
Density
Example Device
Display.DENSITY_VERY_LOW
~ 88 ppi
Display.DENSITY_LOW
~ 120 ppi
Android ldpi devices
Display.DENSITY_MEDIUM
~ 160 ppi
iPhone 3GS, iPad, Android mdpi devices
Display.DENSITY_HIGH
~ 240 ppi
Android hdpi devices
Display.DENSITY_VERY_HIGH
~ 320 ppi
iPhone 4, iPad Air 2, Android xhdpi devices
Display.DENSITY_HD
~ 540 ppi
iPhone 6+, Android xxhdpi devices
Display.DENSITY_560
~ 750 ppi
Android xxxhdpi devices
Density.DENSITY_2HD
~ 1000 ppi
Density.DENSITY_4K
~ 1250ppi

如您所见,上表与 Android 资源方案兼容。

但是

在我的 Android 项目中,我没有图像,但是有 xml drawables。这些绘图从 SVG 绘图转换而来,由 Android-Studio 中简单直接的导入功能提供。

所以我在这里问是否有一种安全的方法将 XCode 项目的 Assets.casset 图像资源包含到 CN1 图像资源中。它们以 1x 2x 3x 图像的形式提供,并且最终必须分配给正确的 iOS 设备,没有错误但“最接近的选择”。

这可能吗?

【问题讨论】:

    标签: codenameone android-resources xcasset pixel-density


    【解决方案1】:

    我们的多图像工作方式类似于 android 的 DPI 级别。他们不使用 iOS 约定,因为我们支持比 iOS 更多的设备分辨率。这适用于 CSS 和设计器。有关更多详细信息,请参阅多图上的developer guide

    【讨论】:

    • 上传 1x 2x 3x 图像不会导致任何错误分配的 dpi 值是多少?我的 CN1 应用仅适用于 iOS,因此中级并不重要。
    • 我没有这些,我们不能保证我们的行为会与苹果的行为相匹配。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-07-14
    • 2023-03-16
    • 1970-01-01
    • 1970-01-01
    • 2015-11-28
    • 1970-01-01
    • 2015-08-14
    相关资源
    最近更新 更多