问题描述
我的 codenameone 应用主要是作为现有 Android 应用的 iOS 对应版本。它适用于较旧的设备,事实上,尽快,或者在将来,Swift 应用程序将替换它以适用于 OS 14>。
最初我不得不使用 Flamingo 工具,它在 Java 类中转换 svg 文件。 我喜欢用它
ScaleImageButton appButton=new ScaleImageButton(new AppIcon().scaled(doubleButtonSize,doubleButtonSize).toImage());
它很麻烦,但它甚至不适用于 iOS。
所以现在我为每个 dpi 级别的每个图标创建 png 图像,因为它也可以在 Android 上完成。
我重命名了这些文件,因此它们遵循我认为在 codenameone 中提出的标准。 可能的名称是:
verylow.png
low.png
medium.png
high.png
veryhigh.png
560.png
hd.png
2hd.png
4k.png
最后必须像这样使用
Image icon = theme.getimage("icon.png");
似乎可以通过多种方式将图像导入到项目中。
据说我将它们包含在主题中。
根据 CN1 开发人员指南,我必须为每个设置大小。
如果我在主题编辑器中将它们作为一个整体导入(选择文件夹或选择所有图像并点击“打开”按钮),则会出现一个大小不正确的对话框(但它们类似于一组特定的选择,尽管可能性很小).
它们并不总是相同的尺寸,但它们都不是根据提供的图像集默认的。
我为正常大小的图标提供了 24px、36px、48px、72px、96px、144px、192px、288px、384px 的图像,并且我还为我的应用程序中的双倍大小图标提供了双倍大小的图像(这些值不会加倍为预期)。
我还必须检查“方形图像”和“保留纵横比”选项(我的图像已经是方形的)。
然后最奇怪的部分是有一个百分比,例如我看到它是 20。 标题写着“将影响所有条目”。我知道这是缩放图像,这是开发人员不想要的,除非开发人员的尺寸错误,但它们之间仍然保持比例,我认为情况并非如此。
但是我不需要任何缩放,图像是正确的。我是故意创建它们的。
开发者指南对我来说不够清楚。
所以我在问
调整错误的大小以匹配正确的大小是否正确,百分比呢?
解决方法
这个特定的用户界面现在有点过时,即使在添加时也没有太多使用。大多数用户选择对多张图片进行桌面缩放。
缩放选项旨在缩小桌面上的高分辨率图像。你不想要/不需要那个。
您不需要编辑文件。只需确保打开 XML 团队模式并确保您的图像使用正确的文件名。然后一旦你保存图像就会出现在资源文件中。
我建议使用在菜单中添加的标准方法添加多图像。然后用您的副本替换所有生成的图像并重新打开文件,然后再次保存(最后一次保存很重要,因为它会覆盖 res 文件)。