KeyboardMan 1.2.3

KeyboardMan 1.2.3

测试已测试
语言语言 SwiftSwift
许可证 MIT
发布上次发布2018年9月
SPM支持 SPM

nixzhu 维护。



KeyboardMan

我们可能需要从键盘通知中获取键盘信息来执行动画。然而,这个方法既复杂又容易出错。更重要的是,我们还需要处理系统触发键盘通知的bug。

但 KeyboardMan 会使它变得简单且容易。

另有一个中文介绍

要求

Swift 4.2, iOS 8.0

(Swift 3, 使用版本 1.1.0)

示例

import KeyboardMan

使用键盘出现/消失执行动画

let keyboardMan = KeyboardMan()

keyboardMan.animateWhenKeyboardAppear = { [weak self] appearPostIndex, keyboardHeight, keyboardHeightIncrement in

    print("appear \(appearPostIndex), \(keyboardHeight), \(keyboardHeightIncrement)\n")

    if let self = self {

        self.tableView.contentOffset.y += keyboardHeightIncrement
        self.tableView.contentInset.bottom = keyboardHeight + strongSelf.toolBar.frame.height

        self.toolBarBottomConstraint.constant = keyboardHeight
        self.view.layoutIfNeeded()
    }
}

keyboardMan.animateWhenKeyboardDisappear = { [weak self] keyboardHeight in

    print("disappear \(keyboardHeight)\n")

    if let self = self {

        self.tableView.contentOffset.y -= keyboardHeight
        self.tableView.contentInset.bottom = strongSelf.toolBar.frame.height

        self.toolBarBottomConstraint.constant = 0
        self.view.layoutIfNeeded()
    }
}

对于更具体的信息,您可以使用 KeyboardMan 提供的 keyboardInfo

keyboardMan.postKeyboardInfo = { [weak self] keyboardMan, keyboardInfo in
    // TODO
}

查看演示以获取更多信息。

安装

您可以自由地将 KeyboardMan.swift 拖到您的 iOS 项目中。但强烈建议使用 Carthage(或 CocoaPods)。

Carthage

github "nixzhu/KeyboardMan"

CocoaPods

pod 'KeyboardMan'

联系方式

NIX @nixzhu

许可

KeyboardMan 适用于MIT许可。更多信息请参阅LICENSE文件。