有一个用Apache Flex编写的纸牌游戏,我试图保持活力,而iOS version仍然有效,Android app已经产生了一些视觉问题:
以下是Android屏幕截图,展示了我的问题:
这是我完整的CSS文件:
@namespace s "library://ns.adobe.com/flex/spark";
@namespace mx "library://ns.adobe.com/flex/mx";
s|ActionBar {
chromeColor: #0066CC;
color: #FFFFFF; /* BUT WHY IS IT BLACK SOMETIMES? */
titleAlign: center;
textShadowColor: #000000;
fontFamily: embFont;
}
@font-face {
src: url("/assets/fonts/arial.ttf");
fontFamily: embFont;
embedAsCFF: false; /* required for StyleableTextField */
unicodeRange:
U+0020-U+0040, /* Punctuation, Numbers */
U+2660-U+2666, /* Card suits - BUT THEY STOPPED WORKING */
U+0041-U+005A, /* Upper-Case A-Z */
U+0061-U+007A, /* Lower-Case a-z */
U+0410-U+0451; /* Cyrillic */
}
s|LabelItemRenderer {
fontFamily: embFont;
}
以下是MXML代码的摘录,显示卡套装和忙碌指示器:
<s:titleContent>
<s:Label id="_titleTxt"
fontWeight="bold"
color="#FFFFFF"
width="100%" />
<s:BusyIndicator id="_busy"
includeInLayout="false"
visible="false" />
</s:titleContent>
<s:actionContent>
<s:CalloutButton id="_leftBtn"
icon="{VIP}"
verticalPosition="after"
includeInLayout="false"
visible="false">
<s:VGroup width="100%">
<s:Label id="_left0" fontSize="{Preferans.FONT_SIZE}" />
<s:Label id="_left1" fontSize="{Preferans.FONT_SIZE}" color="#FF0000" />
<s:Label id="_left2" fontSize="{Preferans.FONT_SIZE}" />
<s:Label id="_left3" fontSize="{Preferans.FONT_SIZE}" color="#FF0000" />
</s:VGroup>
</s:CalloutButton>
...
</s:actionContent>
专门为Label添加以下CSS代码无济于事:
s|Label {
fontFamily: embFont;
}
此外,我还在每个新的Apache Flex版本中继续安装和重新编译我的应用程序,并确保我不会忘记安装可选的flex-fontkit.jar,但这没有帮助:
请帮助,Apache Flex 4在过去几年中发生了什么变化,它已经破坏了我的Android应用程序?
这是我的应用程序的旧图片,当它正常工作时:
答案 0 :(得分:2)
也许这个? https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=50856172
随着Apache Flex 4.14的发布,我们推出了新的移动设备外观 定位iOS7 +和Android 4+版本。无需更改代码 使用这些新皮肤。
可是:
如果您想继续使用旧的旧版移动主题/皮肤,请添加此编译器指令:
-includes=mx.utils.LegacyMobileThemeOverride