2011-01-13 21 views
0

私は現在、アカウント登録セクションを含むアプリケーションで作業しています。 1フィールドはsecureTextEntry = NO(登録のみ)です。このアイデアは、これにより登録が迅速化され、うまくいけば申し込みの数が増えるということです。通常のUITextFieldを配置するだけで十分ですが、ユーザが追加の言語キーボードを持っている場合は、パスワード非対応の文字を入力することも可能です。 secureTextEntry = YESとは異なります。言語選択ボタンを非表示iPhone

は私が

textField.keyboardType = UIKeyboardTypeASCIICapable 

は、最初のASCIIキーボードを表示するテキストフィールドを取得するために行うことができます知っているが、ユーザーはまだそれらが望ましくない文字を取得できるようになりますキーボードスイッチボタンがあります。

国際的なボタンを押さないか、国際的なボタンがないASCIIのみのキーボードを強制する簡単な方法はありますか?

[編集] マルチバイトキーボードを表示しないようにしたり、テキストを表示することもできます。secureTextEntry = YESここにアイデアはありますか?

[編集する] 非マルチバイト文字をすべて許可する必要があるため、国際的なボタンを非表示にすることは本当に悪い考えだと判断しました。

+1

あなたは尋ねられ、誰かが答えに時間を割いた。この質問が削除された場合、オラフは答えと担当者を失います。 – Will

答えて

0

-(BOOL) textField:(UITextField*)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString*)textEnteredをご覧ください。

ユーザーがパスワードが気に入らないものを入力した場合は、削除します。特定の手紙が受け入れられないことを理解していることを確認してください。それ以外の場合、ユーザーはキーボードを見ますが、画面には表示されません。文字がパスワードに入力されたボタンに触れたので、想定します。

これは、キーボード全体を再設計するよりも簡単かもしれません。

+0

私はこれを少しやったことがありますが、ユーザーがキーをクリックしてテキストフィールドに何も表示されないようにするのはちょっと奇妙です。ユーザーのキーボードにASCII文字がない場合は、何も入力できません。 – AWinter

+0

私はあなたのポイントを参照してください。一方、私はあなたのパスワードがどれくらい強く必要なのか不思議です。 ASCII文字のパスワードはすべて安全ではありません。 – Olaf

+0

私はより良い選択肢は、マルチバイトキーボードを抑止するか、またはsecureTextEntry = YESの場合にテキストを表示することだと思います。 secureTextEntry = YESと表示されるのは、マルチバイトを抑制するだけです。 – AWinter