13

我们正在使用 Flash Builder 4.5.1 构建一个移动应用程序,我们的应用程序包含一个必须接受阿拉伯字符并且应该是“从右到左”的文本输入。在模拟器上一切正常,而在设备上却不是。当您键入字符时,它们看起来很好,但是一旦 textinput 失去焦点,字符就会立即恢复。

文本输入的代码很简单<s:TextInput id="txtTest" direction="rtl"/>

有谁知道可能是什么问题?

这也出现在 Android 设备上,当我将应用程序编译为 android 模式时,文本输入中的阿拉伯文本显示为白框!!!标签中的阿拉伯语文本也很好。我尝试嵌入字体,但文本输入不会采用新字体!

谢谢

4

3 回答 3

3

在使用 Flash Builder 4.6 开发应用程序时,我注意到了类似的情况。我注意到的是,当我专注于文本区域时,该文本区域中的字体会发生变化,而当我专注于文本区域时,字体会恢复原状。这只发生在 iOS 中。输入文本时似乎使用了一些默认设备字体,然后在输入文本后应用了应用程序的字体。输入文本并应用应用程序的字体后,您没有看到字体的原因很可能是因为您没有将字体嵌入到应用程序中(这也可以解释为什么它在模拟器中而不是在设备上工作)。在 flex 移动项目中嵌入字体并不是很直接。您需要嵌入字体两次,一次将 embedAsCFF 设置为 false,再次将 embedAsCFF 设置为 true。然后根据您使用的文本区域类型,您需要对其应用具有适当字体系列的 CSS。这是一篇更清晰地解释该过程的文章http://blogs.adobe.com/jasonsj/2011/08/embedding-fonts-in-flex-mobile-projects.html。最后一件事,如果您嵌入字体并且仍然遇到问题,请尝试将 textarea 的 embedFonts 属性设置为 true(它在文章中没有提到这一点,但它对我有用)。

于 2012-08-31T19:09:29.317 回答
0

您是否有任何与 TextInput 相关的数据绑定或状态?当从一种状态转换到另一种状态时,可以禁用数据绑定。当转换到以前的状态时,数据绑定再次启用,以前的值可能会放回 TextInput。如果您有示例代码,请发布。

您是否在使用任何 Tween 库或效果?

于 2012-10-25T17:40:21.007 回答
0

抱歉回复晚了,终于有朋友升级到4.6 SDK解决了这个问题,好像4.5就不行了

于 2013-07-23T11:01:21.387 回答