gpt4 book ai didi

ios - 键盘显示时更改自动布局常量

转载 作者:行者123 更新时间:2023-12-01 20:04:42 24 4
gpt4 key购买 nike

我有一个 TopContainer View ,然后是一个 Scrollview,然后是一个 BottomContainer View 。

现在的约束是 ScrollView 顶部到 topContainer 的底部,并且 ScrollView 的底部到底部容器的顶部。

当我启动 View Controller 并查看 View 层次结构时,它很好。

但是当键盘显示时,我想修改自动布局约束,以便底部容器向上移动。

所以我想我保存约束并像这样更改常量:

private var toolbarBottomConstraint: NSLayoutConstraint?
self.toolbarBottomConstraint = self.toolbar.autoPinEdgeToSuperviewEdge(.Bottom, withInset: 0)

然后当键盘弹出我这样做:
func keyboardWillShow(notification:NSNotification){
var userInfo = notification.userInfo!
var keyboardFrame:CGRect = (userInfo[UIKeyboardFrameBeginUserInfoKey] as! NSValue).CGRectValue()
keyboardFrame = self.view.convertRect(keyboardFrame, fromView: nil)

self.toolbarBottomConstraint?.constant = keyboardFrame.size.height
}

这没有任何作用。键盘高度正是底部需要在键盘顶部的偏移量。

为什么观点不变?我总是这样改变常数,它总是有效的。我是否需要做一些特别的事情,因为它现在是键盘。

最佳答案

如果您正在为 iOS 9 或更高版本构建,我写了 simple library它负责在键盘出现时自动调整 View 。它非常灵活,应该可以无缝工作。

如果您仍然想自己滚动它,看起来您还没有在任何地方为通知添加监听器。在将消息发送到 keyboardWillShow(_:) 之前,您需要这样做。方法。

关于ios - 键盘显示时更改自动布局常量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39256499/

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