首页 > 解决方案 > “UIView”类型的值没有成员“常量”

问题描述

@objc  func handleKeyboardDidShow (notification: NSNotification)
{
    let keyboardRectAsObject = notification.userInfo![UIResponder.keyboardFrameEndUserInfoKey] as! NSValue

    var keyboardRect = CGRect.zero

    keyboardRectAsObject.getValue(&keyboardRect)

    self.changePassView.constant = -1 * keyboardRect.height/2

    UIView.animate(withDuration: 0.5,animations: {

        self.view.layoutIfNeeded()

    })
}

谁能帮我?为什么我收到这个错误,因为我是 iOS 的初学者并正在学习这门语言。

标签: iosswiftuiview

解决方案


self.changePassView.constant = -1 * keyboardRect.height/2

您收到错误是因为您试图访问一个名为constantin的属性self.changePassView,这显然是一个UIView. 看起来您正在尝试更改视图底部约束的值,但布局约束是一个单独的对象,您必须先获取它才能设置它的值。这可能会有所帮助:如何以编程方式从 UIView 获取约束“bottomSpace”?


推荐阅读