【问题标题】:Increase and Decrease iOS8 custom keyboard size增加和减少 iOS8 自定义键盘大小
【发布时间】:2014-10-19 22:29:54
【问题描述】:

我正在 iOS8 中制作自定义键盘,我希望能够增加和减小键盘的大小。我从 iOS 文档中知道,您可以在使用此代码加载键盘后增加键盘的高度:

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)
}

但是这段代码的问题是,如果 expandHeight 开始时是 500,如果稍后在键盘运行时我想将其增加到 600,例如,什么都不会发生,有时键盘会崩溃。

当我增加高度时,有没有其他方法可以增加和减少键盘的高度?

我也一直在使用向上滑动手势来增加键盘的高度,并使用向下滑动手势来减小它。您可以在不抬起手指的情况下向上和向下滑动并将其注册为向上和向下手势吗?

【问题讨论】:

标签: ios swift keyboard ios8


【解决方案1】:

请查看@skyline75489 中的accepted answer——这是唯一对我有用的解决方案。

和你一样,我的键盘有一个手势识别器,可以在短/高值之间切换键盘高度。我的手势识别器调用一个方法,将 LandscapeHeight/portraitHeight 设置为适当的值,然后调用 [self updateViewConstraints] 来修改高度约束。

我正在使用两个单独的手势识别器;一个用于向上滑动,另一个用于向下滑动。您可以将它们替换为单个平移手势识别器,该识别器在手指仍然向下时继续跟踪,但我认为您不能在跟踪时实时调整高度。

【讨论】:

    猜你喜欢
    • 2013-08-04
    • 1970-01-01
    • 2015-01-13
    • 2012-10-23
    • 2014-12-03
    • 1970-01-01
    • 2012-12-10
    • 2014-11-29
    • 1970-01-01
    相关资源
    最近更新 更多