1

我正在开发 Flex 移动应用程序,其中我面临与 TextInputSkin 相关的问题,我已经为所有文本输入和不同的 Sofykeyboard(号码、电子邮件、联系人等)应用了提示。

我将 Textinputs 分组在不同的 VGroup 和 HGroups 中。我使用的是 Scroller,所以当我将“spark.skins.mobile.TextInputSkin”应用到 TextInput 时,滚动效果很好……但是当我移除皮肤时,它会延迟滚动……

现在 TextInputSkin 的问题是它不需要像数字、联系人、电子邮件这样的软键盘......并且对于提示值,它在打字时保留为灰色......

有没有解决这个问题的方法?并且我可以应用自动滚动,以便当软键盘激活而不是适当地调整视图大小时,我找到了 resizeForSoftKeyboard 属性,它调整了视图的大小,但是当软键盘停用时,视图保持不变......所以你可以找到软键盘“黑色”的区域。

4

1 回答 1

2

我认为您要问的问题只是与 Flex 4.5 textInput 皮肤(使用 Flash TextField)和 Flex 4.6 皮肤(使用 StageText)之间的差异有关。

不使用舞台文本时,您无法指定 softKeyboardType

阅读更多:

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/spark/components/TextInput.html

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/spark/components/supportClasses/StyleableStageText.html

引用 StageText 的一些限制:

基于 StageText 的控件的限制:

Native text input fields cannot be clipped by other Flex content and are rendered in a layer above the Stage. Because of this

限制,使用基于 StageText 的外观类的组件将始终显示在其他 Flex 组件之上。Flex 弹出窗口和下拉菜单也将被任何可见的本机文本字段遮挡。最后,本机文本字段的相对 z 顺序无法由应用程序控制。

The native controls do not support embedded fonts.

Links and html markup are not supported.

text is always selectable.

Fractional alpha values are not supported.

Keyboard events are not dispatched for most keys. This means that the tab key will not dispatch keyDown or keyUp events so focus cannot

使用 tab 键从基于 StageText 的控件中删除。

StageText is currently not capable of measuring text.

At this time StageText does not support programmatic control of scroll position.

At this time StageText does not support an event model necessary to allow for touch-based scrolling of forms containing native text fields.
于 2012-09-12T11:19:06.060 回答