2

在 Flash Builder 中,在适用于 iOS 的 flex 移动应用程序中,我有一个文本字段,它应该包含调整大小以填充它的文本。它在 AIR 模拟器上运行良好,但在设备或 iOS 模拟器上不起作用。

输出确认文本大小正在更改,但只要文本字段具有焦点,它就不会显示。

我添加了一个更改字体大小的按钮 - 效果很好,并立即显示更改。该代码在 android 上也可以正常工作,因此这似乎是 iOS 特定问题 - 选择文本字段时文本不会更新。

代码片段来自文本字段上的自定义皮肤。在取消选择之前不渲染。

  textDisplay.setStyle("fontSize",oldfont+1);
  textDisplay.text = "Insert text here"
  hostComponent.invalidateSkinState();
  hostComponent.validateNow();

按钮代码(与 textField 位于同一文件中,显然不在外观代码中)。立即渲染(包括由皮肤中的代码调整大小)

<s:Button click="inputField.text='Insert text here'"/>

任何帮助将不胜感激,谢谢。

4

1 回答 1

0

我们解决了这个问题:皮肤类使用原生文本字段。在 iOS 的情况下,这只会在启动时加载字体样式。我们最终根本没有使用皮肤,而是通过更改处理程序编写了所有内容。

于 2013-02-05T16:12:16.853 回答