正常UITextField显示UIKeyboard包括阿尔法+数字小+特别

但我需要阿尔法只有...

我需要,因为如果用户输入类似 - A'bad

它有一个字符' - 这是影响我的查询

我们如何可以设置只alphabetic UIKeyboard用户?

有帮助吗?

解决方案

这SO后回答您的问题: 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;

}

如我下面做你应该使用;

- (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:@" ' '"];
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top