UITextField
手紙のテキストを確認するにはどうすればよいですか?UITextField
数字、ダッシュ、+記号、スペースなどのみを含め、文字は含めないようにします。
では、文字が含まれてUITextField.text
いないかどうかを確認するにはどうすればよいですか?
前もって感謝します!
UITextField
手紙のテキストを確認するにはどうすればよいですか?UITextField
数字、ダッシュ、+記号、スペースなどのみを含め、文字は含めないようにします。
では、文字が含まれてUITextField.text
いないかどうかを確認するにはどうすればよいですか?
前もって感謝します!
私はこれがうまくいくと思います:
if ([myTextField.text rangeOfCharacterFromSet:[NSCharacterSet letterCharacterSet]].location != NSNotFound) {
NSLog(@"This string contains letters.");
}
使用可能なすべての文字セットは、ここに記載されています:NSCharacterSet
さらにメリットを追加してエラーを防ぐには、ストーリーボードを使用している場合はUITextField
、属性インスペクター(上部にシールドアイコンが付いた右側の列)を選択して開きます。そのビューの中間点に、5つのドロップダウンメニューがあります。これはと呼ばれKeyboard
ます。そこにはいくつかのコントローラーがあり、そのうちの1つはですNumbers and Punctuation
。
これにより、数字と使用可能なすべての句読点のみが表示されるようにキーボードが設定されます。これを以下と組み合わせる:
//SET LEGAL CHARACTERS
NSCharacterSet* tSet = [NSCharacterSet characterSetWithCharactersInString:
@"abcdef1234567890ABCDEF"];//whatever amount or type of characters you want to use
NSCharacterSet* invSet = [tSet invertedSet];
if (yourString rangeOfCharacterFromSet:invSet].location != NSNotFound){
[[[UIAlertView alloc] initWithTitle:@"Input Error"
message:@"Make sure the value entered is numerical or punctual only."
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil] show];
}
また、ユーザーが誤ってまたは意図的にエラーを引き起こすのを防ぐ、使いやすいアプリケーションがあります。