如何使我 UITextView 减去下 iOS 7 键盘屏幕的高度

 我来答
huanglenzhi
推荐于2016-01-05 · 知道合伙人数码行家
huanglenzhi
知道合伙人数码行家
采纳数:117538 获赞数:517185
长期从事计算机组装,维护,网络组建及管理。对计算机硬件、操作系统安装、典型网络设备具有详细认知。

向TA提问 私信TA
展开全部

"正确"的方式来做这个 pre iOS7 一直是以调整 UITextView (UIScrollView 子类) 的 contentInset 属性键盘时显示或隐藏。我没有亲自调查,但这似乎不好在 iOS7 工作,因为下内边距是要么不荣幸或有一些问题仍会低于键盘的光标。看到这一问题供参考。

你的情况在您正在使用自动布局,和你想要的就是"全屏幕"的文本视图可以调整单个约束时键盘显示或隐藏。这将调整您的文本视图的高度:

@implementation TSViewController
{
   IBOutlet NSLayoutConstraint* _textViewSpaceToBottomConstraint;
}

- (void) dealloc
{
   [[NSNotificationCenter defaultCenter] removeObserver: self];
}

- (void)viewDidLoad
{
   [super viewDidLoad];

   [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification object:nil];

   [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillHide:) name:UIKeyboardWillHideNotification object:nil];
}

- (void) keyboardWillShow: (NSNotification*) n
{
   NSValue* bv = n.userInfo[UIKeyboardFrameEndUserInfoKey];
   CGRect br = [bv CGRectValue];

   _textViewSpaceToBottomConstraint.constant = br.size.height;
}

- (void) keyboardWillHide: (NSNotification*) n
{
   _textViewSpaceToBottomConstraint.constant = 0;
}

@end

在您演示图板,您 UITextView 放您的视图-控制器视图并添加 4 约束要粘附其边缘的边缘-视图-控制器视图。连接到 IBOutlet _textViewSpaceToBottomConstraint 视图控制器中的底部空间的限制。

你很可能可以玩这个有点和调整大小动画块内部借款的动画时间和曲线从键盘通知。

我会感兴趣的这个版本设置 contentInset,并且有它正常工作......

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式