anb*_*ber 5 apache-flex prompt textinput autocorrect ios
在ios上,TextInput很奇怪.以下代码:
<s:TextInput id="password" width="100%" displayAsPassword="true"
needsSoftKeyboard="true"
prompt="Password"
softKeyboardType="default"
returnKeyLabel="done"
autoCorrect="false"
skinClass="spark.skins.mobile.TextInputSkin"
/>
Run Code Online (Sandbox Code Playgroud)
当我选择textInput时,提示会按预期消失,但第一个字符是自动选中的.按下第二个键时,将删除第一个字符.只有在键入第一个字符并且字段有提示消息时才会发生这种情况."autoCorrect"似乎没有做任何事情.
有谁知道这个问题的解决方法?我查看了SkinnableTextBase类,但找不到任何有罪的代码.
这个问题始于Flex 4.6.
anb*_*ber 14
在Flex代码中花了好几个小时后,我终于意识到Flex不是问题所在.问题发生在Air 3.2(也在Air 3.3 beta中).如果我用Air 3.1编译,一切正常.
我尝试了各种各样的东西,似乎无法在Air 3.2 +中修复它.我检查了我的其他项目,似乎我用Air 3.2编译的所有应用程序都有类似的问题:(
[UPDATE]
问题出在Flex SDK中的SkinnableTextBase.as中.
当textDisplay_changeHandler(事件:事件)被调用,invalidateSkinState()引起的问题.如果您将皮肤的状态设置为空(""),它的工作原理如下:
skin.currentState = "";
invalidateSkinState();
Run Code Online (Sandbox Code Playgroud)
问题是主题没有正确更新(这是啊@ ck).
如果在CSS 中将"showPromptWhenFocused"设置为false,则问题不会发生; 唯一的副作用是,当您选择了textInput时,提示会消失.
s|TextInput
{
skinClass:ClassReference("spark.skins.mobile.TextInputSkin");
showPromptWhenFocused: false;
}
Run Code Online (Sandbox Code Playgroud)
希望这有助于某人.
| 归档时间: |
|
| 查看次数: |
5666 次 |
| 最近记录: |