AIR for iOS并显示正确的DPI图像

时间:2013-09-20 17:54:03

标签: ios air bitmap dpi

您如何处理在Adobe AIR基础iOS应用程序中交换正确的dpi位图?你有每个图像的两个版本?您是否在检测到设备分辨率后在运行时加载它们,或者您只是将它们嵌入并同时选择适当的分辨率图像?或者你只是缩小你的HiDPI图像?

2 个答案:

答案 0 :(得分:0)

我个人避免为移动设备缩放图像,尤其是在AIR中。嵌入图像也会使内存使用量和swf大小膨胀,这在资源有限的情况下并不理想。我将资产文件夹结构分成160,240,320,并在加载资产之前在运行时查询应用程序DPI。

创建一个包含这样的静态方法的简单类可能很有用。

 public static getAssetPath(name:String, ext:String):String {
    switch(DPI) {
        case 320:
             return "assets/320/" + name + ext;
        case 240:
             return "assets/240/" + name + ext;
        case 160:
             return "assets/160/" + name + ext;
        default:
             throw new Error("Unknown device DPI");
    }
}

希望有所帮助。

答案 1 :(得分:0)

根据您的图像(有或没有文本),我喜欢使用向量并在运行时创建缩放的位图,因为它们中没有文本。但是,在将矢量绘制到位图时,使用滤镜可能会成为一个问题。

对于带有文本的图像,我在我的资源中使用预渲染图像,并在运行时相应地加载它们。这是一个伟大的Artikle解释最佳实践
Adobe- Multible screen sizes in AIR