文本不显示在具有本地化支持的adobe air移动应用程序的发布版本中

时间:2014-03-04 04:35:28

标签: air adobe flash-builder

我正在构建一个支持本地化的移动应用程序。该应用程序支持三种语言,它的目标是Android和ios。一切都适用于调试版本;我可以测试所有语言的一切。当我发布版本时,应用程序上的所有文本都会消失!按钮显示没有文字。如果我将其中一些更改为不使用资源管理器,则更改的那些将显示文本。有谁知道为什么会发生这种情况?我使用的是Flashbuilder 4.6,Apache Flex 4.11 air 13 beta。

感谢。

2 个答案:

答案 0 :(得分:0)

要解决此问题,您必须在应用中嵌入字体。它是一个常见的场景,说你的系统有XYZ字体,所以你的系统中的应用程序给出了正确的输出,所以有不同的情况说有人有一个字体所以没有问题,但有人可能没有在他的系统中安装字体我们的应用做什么?????没什么。所以我有这个问题的解决方案是在你的应用程序中嵌入一个字体。 在您的应用中嵌入字体的几种方法

第一种方式(在css中)

@font-face { src: url("location"); fontFamily: alias; [fontStyle: normal | italic | oblique] ; [fontWeight: normal | bold | heavy] ; [embedAsCFF:true | false] ; [advancedAntiAliasing: true | false]; } .customStyle { fontFamily: myFontFamily; fontSize: 24; skinClass: ClassReference("spark.skins.mobile.TextAreaSkin"); }

第二种方式(在主应用程序中)

<fx:Style> @namespace s "library://ns.adobe.com/flex/spark";

    @font-face { 
        src: url("../assets/MyriadWebPro.ttf"); 
        fontFamily: myFontFamily; 
        embedAsCFF: false; 
    }       
    .customStyle {
        fontFamily: myFontFamily;
        fontSize: 24;
        skinClass: ClassReference("spark.skins.mobile.TextAreaSkin");
    }   
</fx:Style>

有关在应用中嵌入字体的更多帮助,请转到 http://divillysausages.com/blog/as3_font_embedding_masterclass

这可能会对你有所帮助

此致 JK Patel

答案 1 :(得分:0)

我终于找到了问题,这是我的代码中的一个错误!在应用程序的第一次初始化时,ResourceManager localeChain没有默认值。我没有在我的测试设备上看到这个问题,因为应用程序已将localechain值保存在设备本地存储中。每次我在我的设备上进行新的开发构建和安装时,它会在第一次初始化时读取保存的localechain。谢谢Patel