UIKeyboard 类的一些属性和使用
来源:互联网 发布:elementary os知乎 编辑:程序博客网 时间:2024/06/10 09:11
偷点懒.不想翻译. 这里记录一下.
// Each notification includes a nil object and a userInfo dictionary containing the// begining and ending keyboard frame in screen coordinates. Use the various UIView and// UIWindow convertRect facilities to get the frame in the desired coordinate system.// Animation key/value pairs are only available for the "will" family of notification.UIKIT_EXTERN NSString *const UIKeyboardWillShowNotification;UIKIT_EXTERN NSString *const UIKeyboardDidShowNotification; UIKIT_EXTERN NSString *const UIKeyboardWillHideNotification; UIKIT_EXTERN NSString *const UIKeyboardDidHideNotification;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 (UIViewAnimationCurve)// Like the standard keyboard notifications above, these additional notifications include// a nil object and begin/end frames of the keyboard in screen coordinates in the userInfo dictionary.UIKIT_EXTERN NSString *const UIKeyboardWillChangeFrameNotification NS_AVAILABLE_IOS(5_0);UIKIT_EXTERN NSString *const UIKeyboardDidChangeFrameNotification NS_AVAILABLE_IOS(5_0);// These keys are superseded by UIKeyboardFrameBeginUserInfoKey and UIKeyboardFrameEndUserInfoKey.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);
使用代码:
- (void)keyboardWillShow:(NSNotification *)notification { /* Reduce the size of the text view so that it's not obscured by the keyboard. Animate the resize so that it's in sync with the appearance of the keyboard. */ NSDictionary *userInfo = [notification userInfo]; // Get the origin of the keyboard when it's displayed. NSValue* aValue = [userInfo objectForKey:UIKeyboardFrameEndUserInfoKey]; // Get the top of the keyboard as the y coordinate of its origin in self's view's coordinate system. The bottom of the text view's frame should align with the top of the keyboard's final position. CGRect keyboardRect = [aValue CGRectValue]; keyboardRect = [self.view convertRect:keyboardRect fromView:nil]; CGFloat keyboardTop = keyboardRect.origin.y; CGRect newTextViewFrame = self.view.bounds; newTextViewFrame.size.height = keyboardTop - self.view.bounds.origin.y; // Get the duration of the animation. NSValue *animationDurationValue = [userInfo objectForKey:UIKeyboardAnimationDurationUserInfoKey]; NSTimeInterval animationDuration; [animationDurationValue getValue:&animationDuration]; // Animate the resize of the text view's frame in sync with the keyboard's appearance. [UIView beginAnimations:nil context:NULL]; [UIView setAnimationDuration:animationDuration]; textView.frame = newTextViewFrame; [UIView commitAnimations];} - (void)keyboardWillHide:(NSNotification *)notification { NSDictionary* userInfo = [notification userInfo]; /* Restore the size of the text view (fill self's view). Animate the resize so that it's in sync with the disappearance of the keyboard. */ NSValue *animationDurationValue = [userInfo objectForKey:UIKeyboardAnimationDurationUserInfoKey]; NSTimeInterval animationDuration; [animationDurationValue getValue:&animationDuration]; [UIView beginAnimations:nil context:NULL]; [UIView setAnimationDuration:animationDuration]; textView.frame = self.view.bounds; [UIView commitAnimations];}
- UIKeyboard 类的一些属性和使用
- UIKeyBoard高度的监控
- UIKeyBoard高度的监控
- UIKeyBoard高度的监控
- UIKeyboard
- UIKeyboard
- CSS3的一些类和属性
- css 的一些属性使用
- UIButton文字的一些属性,和font的一些属性
- 属性页的一些使用技巧
- 使用属性对话框的一些经验
- 关于apply属性使用的一些例子
- jqgrid一些属性的使用(zendframework)
- SearchBar使用设置的一些属性
- css与div的一些属性使用
- 关于weight属性使用的一些细节
- 关于ellipsize属性使用的一些细节
- IOS的UITextField,UIButton,UIWebView的一些属性介绍和IOS图片资源的使用技巧
- base64 on iphone-sdk
- hdoj 1819 Bishops
- levelDB源码分析-Skiplist
- SqlServer游标、存储过程及数据块执行
- SQL Server 如果本機管理者與 sa 帳戶都無法登入怎麼辦?
- UIKeyboard 类的一些属性和使用
- 关于settimeout
- EditText文本长度的设置
- WEB Service 接收自定义对象
- ICS SIP Call移植
- SSRS里面的if else表达式 和决策函数
- usb vid查询
- CentOS6.0安装bochs2.5.1
- 保险行业CRM的需要