我正在使用Swift为iOS 8制作自定义键盘。我是iOS开发的新手,我自己无法解决这个问题。在Apple App程序扩展编程文档中,Apple表示您可以在启动后更改任何自定义键盘的高度。他们在Objective-C中提供了一个示例,但我使用的是Swift,到目前为止,我似乎无法找到Swift版本的代码。
有人可以将3行代码转换成Swift或者给我一个改变键盘高度的方法吗?
这是包含以下代码的网页: https://developer.apple.com/library/prerelease/ios/documentation/General/Conceptual/ExtensibilityPG/Keyboard.html
以下是代码行:
CGFloat _expandedHeight = 500;
NSLayoutConstraint *_heightConstraint =
[NSLayoutConstraint constraintWithItem: self.view
attribute: NSLayoutAttributeHeight
relatedBy: NSLayoutRelationEqual
toItem: nil
attribute: NSLayoutAttributeNotAnAttribute
multiplier: 0.0
constant: _expandedHeight];
[self.view addConstraint: _heightConstraint];
答案 0 :(得分:4)
我添加了提供给viewDidAppear方法的代码,键盘自身调整了大小。
这是有效的代码。
override func viewDidAppear(animated: Bool) {
super.viewDidAppear(animated)
let expandedHeight:CGFloat = 500
let heightConstraint = NSLayoutConstraint(item:self.view,
attribute: .Height,
relatedBy: .Equal,
toItem: nil,
attribute: .NotAnAttribute,
multiplier: 0.0,
constant: expandedHeight)
self.view.addConstraint(heightConstraint)
}
答案 1 :(得分:1)
let heightConstraint = NSLayoutConstraint(item: view,
attribute: .Height,
relatedBy: .Equal,
toItem: nil,
attribute: .NotAnAttribute,
multiplier: 0.0,
constant: expandedHeight)
答案 2 :(得分:0)
完全,
let expandedHeight:CGFloat = 500
let heightConstraint = NSLayoutConstraint(item:self.view,
attribute: .Height,
relatedBy: .Equal,
toItem: nil,
attribute: .NotAnAttribute,
multiplier: 0.0,
constant: expandedHeight)
self.view.addConstraint(heightConstraint)