我已经成功添加了一个下拉列表(flextras),但它无法正常工作。每当我触摸下拉列表时,弹出的列表都会在文本框下面(位于下拉列表下方)。因此,我无法从文本框顶部的列表中选择项目,因为焦点会传递到文本框。
答案 0 :(得分:0)
很高兴阅读此blog post on the subject。
相关引用:
Flex 4.6中TextInput的默认外观使用 StyleableStageText。 StageText始终绘制在Flash上方 显示列表,这就是下拉菜单弹出窗口显示的原因 它。引用Adobe docs on StageText:
[start doc quote]原生文本输入字段不能被其他Flex内容裁剪 在舞台上方的图层中渲染。由于这个限制, 将始终显示使用基于StageText的外观类的组件 在其他Flex组件之上。 Flex弹出窗口和下拉菜单会 也可以被任何可见的原生文本字段遮盖。最后,原生 文本字段的相对z顺序不能由应用程序控制。 [结束文件引用]
有两种可能的解决方案。首先是建筑师 您的移动应用程序,以便弹出窗口永远不会显示在上面 的TextInput。如果您正在构建多个设备,这可能会很困难 具有不同的屏幕尺寸。
第二种是使用Flex 4.5 skin class for your TextInputs:
<textInput skinClass="spark.skins.mobile.TextInputSkin" />