CodenameOne - 在 CN1 项目中使用 XCode Assets.Casset 目录的 1x 2x 3x 图像

CodenameOne - Using 1x 2x 3x images of XCode Assets.Casset catalog in CN1 project

我的 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

如您所见,上面的 table 与 Android 资源方案兼容。

但是

在我的 Android 项目中我没有图像,但有 xml 可绘制对象。这些可绘制对象是从 SVG 可绘制对象转换而来的,得益于 Android-Studio 中简单直接的导入功能。

所以我想问一下有没有安全的方法可以把XCode项目的Assets.casset图片资源包含到CN1图片资源中。它们以 1x 2x 3x 图像的形式提供,并且最终必须将它们分配给正确的 iOS 设备,没有错误但“最接近的替代方案”。

这可能吗?

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