Actionscript 3 flex mobile:textInput未清除焦点提示
简单的Actionscript 3 flex mobile:textInput未清除焦点提示,actionscript-3,apache-flex,flex4.6,flex-mobile,Actionscript 3,Apache Flex,Flex4.6,Flex Mobile,简单的 <s:TextInput x="163" y="117" prompt="hello"/> 不清除焦点提示,但在用户首次键入字母时清除提示 这是flex mobile上的行为在swf上行为正常 这是一个错误,如何纠正 关于可能还有其他方法可以解决这个问题,但我的方法是,您可以在事件中添加一个焦点,并执行以下操作: <s:TextInput id="textInput" x="10" y="24" prompt="Enter SomeThing" focusIn="t
<s:TextInput x="163" y="117" prompt="hello"/>
不清除焦点提示,但在用户首次键入字母时清除提示
这是flex mobile上的行为在swf上行为正常
这是一个错误,如何纠正
关于可能还有其他方法可以解决这个问题,但我的方法是,您可以在事件中添加一个焦点,并执行以下操作:
<s:TextInput id="textInput" x="10" y="24" prompt="Enter SomeThing" focusIn="textinput1_focusInHandler(event)"/>
<fx:Script>
<![CDATA[
protected function textinput1_focusInHandler(event:FocusEvent):void
{
// TODO Auto-generated method stub
textInput.prompt = "";
}
]]>
</fx:Script>
也许这对你有用…也许还有其他方法可以解决这个问题,但我的方法是你可以在事件中添加一个焦点,然后做一些类似的事情:
<s:TextInput id="textInput" x="10" y="24" prompt="Enter SomeThing" focusIn="textinput1_focusInHandler(event)"/>
<fx:Script>
<![CDATA[
protected function textinput1_focusInHandler(event:FocusEvent):void
{
// TODO Auto-generated method stub
textInput.prompt = "";
}
]]>
</fx:Script>
希望这对你有用…www.Flextras.com走在正确的道路上。我在iPad上的TextInput也有同样的问题,当我需要时,该字段不会显示为密码 您只需手动应用mobile TextInput皮肤即可
<s:TextInput x="163" y="117" skinClass="spark.skins.mobile.TextInputSkin" prompt="hello"/>
您可以在一个单独的问题中看到提供给我的答案。www.Flextras.com走在正确的道路上。我在iPad上的TextInput也有同样的问题,当我需要时,该字段不会显示为密码 您只需手动应用mobile TextInput皮肤即可
<s:TextInput x="163" y="117" skinClass="spark.skins.mobile.TextInputSkin" prompt="hello"/>
您可以在一个单独的问题中看到提供给我的答案。实际上,隐藏焦点提示的解决方案非常简单,只需添加这样的样式声明即可
s|TextInput{
showPromptWhenFocused: false;
}
还是在课堂上
.noPromptOnFocus{
showPromptWhenFocused: false;
}
如果使用第二种方法,您的TextInput应该类似
<s:TextInput id="myTextInput" prompt="Write something here.." styleName="noPromptWhenFocused" />
无论您使用的是StageText还是TextInputSkin,这都可以正常工作。实际上,隐藏焦点提示的解决方案非常简单,只需添加如下样式声明
s|TextInput{
showPromptWhenFocused: false;
}
还是在课堂上
.noPromptOnFocus{
showPromptWhenFocused: false;
}
如果使用第二种方法,您的TextInput应该类似
<s:TextInput id="myTextInput" prompt="Write something here.." styleName="noPromptWhenFocused" />
无论您使用的是StageText还是TextInputSkin,它都可以正常工作。我假设您将其标记为Flex 4.6;您正在使用Flex4.6?我假设从你的代码中,你正在使用默认的皮肤类作为移动文本输入?也许移动设备上使用的StageText与Flash文本字段的操作方式不同?我假设您将其标记为Flex 4.6;您正在使用Flex4.6?我假设从你的代码中,你正在使用默认的皮肤类作为移动文本输入?也许移动设备上使用的StageText与Flash TextField的运行方式不同?本质上,它使用Flex 4.5移动皮肤类进行文本输入。[它早于StageText,因此不使用它]。@www.Flextras.com在谷歌上快速搜索后,似乎你是对的。不管怎样,它解决了我遇到的所有问题。你失去了StageText的好处,但以我的经验来看,它的缺点尤其是StageText凌驾于一切之上,当滚动远远超过这些好处时,它是一种痛苦;我只是想澄清一下。这不一定是坏事。无论哪种方式都有权衡。@www.Flextras.com公平。谢谢你的澄清。在你提到之前,我不知道那个皮肤班是干什么的。希望他们将来不会删除它。本质上,它使用Flex4.5移动皮肤类进行文本输入。[它早于StageText,因此不使用它]。@www.Flextras.com在谷歌上快速搜索后,似乎你是对的。不管怎样,它解决了我遇到的所有问题。你失去了StageText的好处,但以我的经验来看,它的缺点尤其是StageText凌驾于一切之上,当滚动远远超过这些好处时,它是一种痛苦;我只是想澄清一下。这不一定是坏事。无论哪种方式都有权衡。@www.Flextras.com公平。谢谢你的澄清。在你提到之前,我不知道那个皮肤班是干什么的。希望他们将来不会移除它。