Flex Mobile textInput在滚动条文本中滞后

时间:2012-02-17 21:02:04

标签: flash flex mobile textinput scroller

我一直看到在我的flex移动应用中输入到textInput容器的文本中有一个奇怪的延迟。当我在textInput中输入一些文本然后向任何方向滚动时,会出现问题。除了textInput中的文本外,整个屏幕和所有对象似乎都在移动。

当我选择textInput开始输入并出现软键盘并移动输入然后将光标和键入的文本放在屏幕上的其他位置时,这成为一个非常大的问题。看起来很糟糕。

这是一般性能问题吗?有关如何修复的任何建议?

代码是基本的:

 <s:Scroller x="0" y="0" width="100%" height="100%" verticalScrollPolicy="on" >
      <s:Group> 
         <s:TextArea softKeyboardType="number" id="ti1" y="145" width="390" height="75"                      fontSize="36" fontWeight="bold" horizontalCenter="0" text=" "/>
      </s:Group>
    </s:Scroller>

3 个答案:

答案 0 :(得分:5)

经过几个小时的谷歌搜索后,我自己找到了答案。在textinput语句中,您需要添加skinClass =“spark.skins.mobile.TextInputSkin”

如果看起来像这样。

<s:Scroller x="0" y="0" width="100%" height="100%" verticalScrollPolicy="on" >
    <s:Group>   
    <s:TextInput skinClass="spark.skins.mobile.TextInputSkin"/>     
    </s:Group>
    </s:Scroller>

这样可以防止文本在实际运行应用程序时从文本输入框中“飞出”。我确实看到一些提到软键盘在你这样做时不起作用,但我似乎没有问题,所以也许已经解决了。希望这对我来说和其他人一样有用。

答案 1 :(得分:3)

要覆盖所有TextInput,请使用CSS。

s|TextInput
{
skinClass: ClassReference("spark.skins.mobile.TextInputSkin");
}

答案 2 :(得分:0)

此问题已在Apache Flex SDK 4.12.0版中修复

请参阅此链接 Apache FLEX JIRA

如果您使用的是较旧的SDK,请检​​查此组件ExtendedStageTextInput

希望这可能对某人有所帮助......