iOS键盘通知

来源:互联网 发布:超星校园阅读软件 编辑:程序博客网 时间:2024/05/01 05:08

键盘通知

UIKIT_EXTERN NSString *const UIKeyboardWillShowNotification; //键盘即将显示UIKIT_EXTERN NSString *const UIKeyboardDidShowNotification; <span style="white-space:pre"></span>//键盘已经显示UIKIT_EXTERN NSString *const UIKeyboardWillHideNotification; <span style="white-space:pre"></span>//键盘即将隐藏UIKIT_EXTERN NSString *const UIKeyboardDidHideNotification;<span style="white-space:pre"></span>//键盘已经隐藏UIKIT_EXTERN NSString *const UIKeyboardWillChangeFrameNotification  NS_AVAILABLE_IOS(5_0); // 键盘frame值即将发生变化 键盘类型发生变化UIKIT_EXTERN NSString *const UIKeyboardDidChangeFrameNotification   NS_AVAILABLE_IOS(5_0);

使用键盘通知时需注册键盘通知,并且在delloc()方法中移除通知,接收到通知的时候在相应的事件中处理

 //注册键盘通知    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(changeInputAccessView:) name:UIKeyboardWillShowNotification object:nil];    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyBoardWillHideInView:) name:UIKeyboardWillHideNotification object:nil];    //键盘类型变化通知    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardTypeWillChange:) name:UIKeyboardWillChangeFrameNotification object:nil];

//移除监听- (void)dealloc {    [[NSNotificationCenter defaultCenter] removeObserver:self name:UIKeyboardWillShowNotification object:nil];    [[NSNotificationCenter defaultCenter] removeObserver:self name:UIKeyboardWillHideNotification object:nil];    [[NSNotificationCenter defaultCenter] removeObserver:self name:UIKeyboardWillChangeFrameNotification object:nil];}

键盘通知NSNotification里面附带有一个userInfo的字典
UIKIT_EXTERN NSString *const UIKeyboardFrameBeginUserInfoKey        NS_AVAILABLE_IOS(3_2); // NSValue of CGRectUIKIT_EXTERN NSString *const UIKeyboardFrameEndUserInfoKey          NS_AVAILABLE_IOS(3_2); // NSValue of CGRectUIKIT_EXTERN NSString *const UIKeyboardAnimationDurationUserInfoKey NS_AVAILABLE_IOS(3_0); // NSNumber of doubleUIKIT_EXTERN NSString *const UIKeyboardAnimationCurveUserInfoKey    NS_AVAILABLE_IOS(3_0); // NSNumber of NSUInteger UIKIT_EXTERN NSString *const UIKeyboardCenterBeginUserInfoKey   NS_DEPRECATED_IOS(2_0, 3_2);UIKIT_EXTERN NSString *const UIKeyboardCenterEndUserInfoKey     NS_DEPRECATED_IOS(2_0, 3_2);UIKIT_EXTERN NSString *const UIKeyboardBoundsUserInfoKey        NS_DEPRECATED_IOS(2_0, 3_2);

键盘类型

    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


0 0
原创粉丝点击