1

UITextField手紙のテキストを確認するにはどうすればよいですか?UITextField数字、ダッシュ、+記号、スペースなどのみを含め、文字は含めないようにます。

では、文字が含まれてUITextField.textないかどうかを確認するにはどうすればよいですか?

前もって感謝します!

4

2 に答える 2

8

私はこれがうまくいくと思います:

if ([myTextField.text rangeOfCharacterFromSet:[NSCharacterSet letterCharacterSet]].location != NSNotFound) {
  NSLog(@"This string contains letters.");
}

使用可能なすべての文字セットは、ここに記載されています:NSCharacterSet

于 2013-03-26T17:19:31.630 に答える
0

さらにメリットを追加してエラーを防ぐには、ストーリーボードを使用している場合は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];

}

また、ユーザーが誤ってまたは意図的にエラーを引き起こすのを防ぐ、使いやすいアプリケーションがあります。

于 2014-10-22T15:00:49.253 に答える