シンプルな
<s:TextInput x="163" y="117" prompt="hello"/>
フォーカス時にプロンプトをクリアしませんが、ユーザーが最初に文字を入力したときにプロンプトをクリアします。
これは flex mobile での動作です (swf での動作は問題ありません)。
それはバグですか、それを修正する方法はありますか?
よろしく
シンプルな
<s:TextInput x="163" y="117" prompt="hello"/>
フォーカス時にプロンプトをクリアしませんが、ユーザーが最初に文字を入力したときにプロンプトをクリアします。
これは flex mobile での動作です (swf での動作は問題ありません)。
それはバグですか、それを修正する方法はありますか?
よろしく
それを取り除く別の方法があるかもしれませんが、私のアプローチは、 focusIn イベントを追加して次のようなことをすることです:
<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{
showPromptWhenFocused: false;
}
またはクラスで
.noPromptOnFocus{
showPromptWhenFocused: false;
}
2 番目のアプローチを使用する場合、TextInput は次のようになります。
<s:TextInput id="myTextInput" prompt="Write something here.." styleName="noPromptWhenFocused" />
これは、StageText または TextInputSkin のどちらを使用していても問題なく機能します。
www.Flextras.com は正しい道を進んでいます。iPad の TextInput でも同じ問題があり、必要なときにフィールドがパスワードとして表示されませんでした。
モバイル TextInput スキンを手動で適用するだけです。
<s:TextInput x="163" y="117" skinClass="spark.skins.mobile.TextInputSkin" prompt="hello"/>
こちらの別の質問で私に提供された回答を見ることができます。