2011-09-19 6 views
0

ユーザーがキーボードをタップすると、入力シンボルがASCIIパレットに属しているかどうかを知る必要があります。iPhoneでのASCII互換性のキーボード入力の確認

だから私は、入力された文字を確認するために

-(BOOL) textField: (UITextField*) textField shouldChangeCharactersInRange: (NSRange) range replacementString: (NSString*) string 

方法で何をする必要がありますか?現在の瞬間

私は、入力文字列からASCII文字を取得するときに(例えば)、ロシア語でのユーザーのタイプ:

const char* want_strip_not_ascii_chars = [string UTF8string]; 
+0

これは、たとえばロシア語キーボードや日本語キーボードを持つユーザーは、フィールドに何も入力できないことを意味します。これがあなたが望むものだと確信していますか? – jrturton

+0

私は文字が許可されていないことを警告します。今は状況が悪いです:ユーザーは文字を入力しますが、別の文字は画面に表示されます。 – brigadir

+0

これはまだ問題ですか(あなたは私の答えを受け入れているのでわかりません) – jrturton

答えて

1
以下は、あなたが求めている何を与える

-(BOOL) textField: (UITextField*) textField shouldChangeCharactersInRange: (NSRange) range replacementString: (NSString*) string 
{ 
    return [string canBeConvertedToEncoding:NSASCIIStringEncoding]; 
} 

ASCII以外のキーボードを使用しているユーザーがフィールドを使用できないようにしてください。

関連する問題