0

有没有办法禁用 iPhone 键盘上的“,”按钮,或者至少阻止用户在我的 UITextField 中输入“,”?

4

2 回答 2

3

是的。设置文本字段的委托,然后实现以下方法:

- (BOOL)textField:(UITextField *)tf shouldChangeCharactersInRange:(NSRange)r replacementString:(NSString *)str
{
    if (tf == theTextFieldYouWannaBehaveLikeThis) {
        if ([str isEqualToString:@","]) {
            return NO;
        }
    }
    return YES;
}
于 2012-09-01T18:14:05.433 回答
0

a 有一个keyboardType属性UITextField

typedef enum {
    UIKeyboardTypeDefault,                // Default type for the current input method.
    UIKeyboardTypeASCIICapable,           // Displays a keyboard which can enter ASCII characters, non-ASCII keyboards remain active
    UIKeyboardTypeNumbersAndPunctuation,  // Numbers and assorted punctuation.
    UIKeyboardTypeURL,                    // A type optimized for URL entry (shows . / .com prominently).
    UIKeyboardTypeNumberPad,              // A number pad (0-9). Suitable for PIN entry.
    UIKeyboardTypePhonePad,               // A phone pad (1-9, *, 0, #, with letters under the numbers).
    UIKeyboardTypeNamePhonePad,           // A type optimized for entering a person's name or phone number.
    UIKeyboardTypeEmailAddress,           // A type optimized for multiple email address entry (shows space @ . prominently).

    UIKeyboardTypeAlphabet = UIKeyboardTypeASCIICapable, // Deprecated

} UIKeyboardType;
于 2012-09-01T18:16:28.633 回答