Daily Archives: 2015年5月20日

iOS制作自定义数字键盘

一、应用场景

很多情况下我们的输入都是有硬性要求的,比如只能输入数字,通常情况下我们的解决方案就是指定输入框的键盘模式(keyboardType),可系统提供给我的键盘种类还是非常有限的,如下所示:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
typedef NS_ENUM(NSInteger, UIKeyboardType) {
????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).
????UIKeyboardTypeDecimalPad NS_ENUM_AVAILABLE_IOS(4_1),?? // A number pad with a decimal point.
????UIKeyboardTypeTwitter NS_ENUM_AVAILABLE_IOS(5_0),????? // A type optimized for twitter text entry (easy access to @ #)
????UIKeyboardTypeWebSearch NS_ENUM_AVAILABLE_IOS(7_0),??? // A default keyboard type with URL-oriented addition (shows space . prominently).
?
????UIKeyboardTypeAlphabet = UIKeyboardTypeASCIICapable, // Deprecated
?
};

[……]

继续阅读