【发布时间】:2015-01-16 20:55:05
【问题描述】:
我想在键盘出现时调整文本视图的大小。我的代码如下。我有自动布局,因此使用来自超级视图的 textView->bottom space 的约束并通过 IBOutlet distanceFromBottom 引用它。
- (void)keyboardWillShow:(NSNotification *)notification
{
[UIView animateWithDuration:0.3 animations:^{
NSDictionary* d = [notification userInfo];
CGRect r = [d[UIKeyboardFrameEndUserInfoKey] CGRectValue];
r = [textView convertRect:r fromView:Nil];
if(IS_IPHONE_6||IS_IPHONE_6P)
distanceFromBottom.constant = r.origin.y+78;
else if(IS_IPHONE_5)
distanceFromBottom.constant = r.origin.y+183;
}];
}
上面的代码完美运行。我不明白为什么我需要为 iPhone6 添加 +78 或为 iPhone5 添加 183。这两个值是我通过反复试验得出的。如果我不添加这些,textView 会延伸到键盘下方。请帮我解开这个谜。
【问题讨论】:
标签: ios objective-c uitextview