gpt4 book ai didi

ios - 如何使用自动布局避免 UITextField 和键盘之间的冲突?

转载 作者:行者123 更新时间:2023-11-28 19:39:14 25 4
gpt4 key购买 nike

1.我不喜欢使用任何第三方框架来做,只有约束有没有可能?

好的,我试过了:)

enter image description here

使用约束 IBOutlet 我需要更新它..

-(void)keyboardDidShow:(NSNotification*)aNotification{
NSDictionary* info = [aNotification userInfo];

double animationduration =[info[UIKeyboardAnimationDurationUserInfoKey] doubleValue];
CGRect keyboardEndFrame =[info[UIKeyboardFrameEndUserInfoKey] CGRectValue];

NSLog(@"this is user info notification keyboard did show==%@",info);
}

引导我的 friend 们实现这一目标:)

最佳答案

请按照以下步骤操作:

  • 每当键盘出现时,只需更改constant outlet of根据您的需要进行限制。
  • 然后通过调用[self]更新约束
    updateConstraintIfNeeded]
  • 然后通过调用[self layoutIfNeeded]更新 View 布局
  • 每当键盘出现故障时,将您的常量改回原来的
  • 再次关注 3 和 4

提示:
在 UIView 动画 block 中调用布局更新调用将帮助您平滑过渡。

如果你想得到键盘大小:

- (void)keyboardWillShow:(NSNotification*)notification {
NSDictionary *info = [notification userInfo];
CGSize kbSize = [[info objectForKey:UIKeyboardFrameEndUserInfoKey] CGRectValue].size;
CGFloat deltaHeight = kbSize.height - _currentKeyboardHeight;
// Write code to adjust views accordingly using deltaHeight
_currentKeyboardHeight = kbSize.height;

}

就这些。

关于ios - 如何使用自动布局避免 UITextField 和键盘之间的冲突?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35768371/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com