gpt4 book ai didi

ios - 停止键盘关闭以重置 View 的高度

转载 作者:可可西里 更新时间:2023-10-31 23:45:33 25 4
gpt4 key购买 nike

我正在使用 Storyboard (Xcode6 beta7) 在 iOS 8 中制作登录屏幕。这是基本思想的图像:

enter image description here

在任何文本框内按下都会弹出键盘,在任何文本框外按下会再次关闭键盘,使用:

self.view.endEditing(true)

所以按下登录按钮会使键盘消失。

当用户输入无效的登录凭据时,我希望对话框 View 增加高度并显示一些错误消息:

enter image description here

我正在使用以下函数通过动画执行此操作:

func increaseHeight(view: UIView, increment: CGFloat) {

UIView.animateWithDuration(1.0,
delay: 0.0,
usingSpringWithDamping: 0.3,
initialSpringVelocity: 3.0,
options: UIViewAnimationOptions.CurveEaseInOut,
animations: ({
view.frame = CGRect(
x: view.frame.origin.x,
y: view.frame.origin.y,
width: view.frame.width,
height: view.frame.height + increment
)
}),
completion: nil
)
}

如果我调用这个函数,比方说通过按下登录按钮,它就会按我想要的方式运行。执行动画并显示错误消息。

针对问题

但是,如果我首先开始编辑任何文本字段(即调出键盘),然后按下登录按钮,动画就会执行——但它会弹回原来的高度。

如何在键盘关闭后保持高度增量?

最佳答案

如果您使用自动布局,则需要更改约束而不是 View 框架。

heightOfViewConstraint.constant += increment

UIView animation....{
self.layoutIfNeeded()
}

这应该使您的 View 保持拉伸(stretch)状态,但前提是您使用自动布局和约束。

关于ios - 停止键盘关闭以重置 View 的高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25764698/

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