Normalは、 alpha+Numberic+specials を含むUITextField
a を表示しますUIKeyboard
しかし、私はアルファだけが必要です...
ユーザーが次のようなものを入力した場合、これが必要です-A'bad
それは char ' を持っています - 私のクエリに影響を与えています。
ユーザーのみに設定するにはどうすればよいalphabetic
UIKeyboard
ですか?
Normalは、 alpha+Numberic+specials を含むUITextField
a を表示しますUIKeyboard
しかし、私はアルファだけが必要です...
ユーザーが次のようなものを入力した場合、これが必要です-A'bad
それは char ' を持っています - 私のクエリに影響を与えています。
ユーザーのみに設定するにはどうすればよいalphabetic
UIKeyboard
ですか?
おもう。答えがわかりました。
UIViewController
ファイルに.hを追加しますdelegate<UITextfieldDelegate>
次のコードを.mファイルに追加します
- (BOOL) textField:(UITextField*)textField
shouldChangeCharactersInRange:(NSRange)range
replacementString:(NSString*)textEntered {
for (int i = 0; i < [textEntered length]; i++) {
unichar c = [textEntered characterAtIndex:i];
if (![myCharSet characterIsMember:c]) {
return NO;
}
}
return YES;
}
この SO 投稿はあなたの質問に答えます: UIkeyboard type
以下のように使用する必要があります。
- (BOOL)textField:(UITextField *)field shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)characters
{
NSMutableCharacterSet *filteredChars = [NSMutableCharacterSet letterCharacterSet];
[filteredChars formUnionWithCharacterSet:[NSCharacterSet whitespaceCharacterSet]];
NSCharacterSet *blockedCharSet = [filteredChars invertedSet];
if (([string rangeOfCharacterFromSet:blockedCharSet].location == NSNotFound)) {
return YES;
}
return NO;
}
ユーザーによる '(apostorpe) の追加を無効にするか許可しない代わりに、次のコードを使用して、'(apostorpe) を挿入できるようにします。
[textEntered stringByReplacingOccurrencesOfString:@" ' " withString:@" ' '"];