Clavier

1.0.2

Clavier is Keyboard Layout Guide for iOS. It using an intersection frame to calculate the Layout Guide.
hainayanda/Clavier

What's New

v1.0.2

2021-07-21T05:34:51Z

Update username

Clavier

Clavier is Keyboard Layout Guide for iOS. It using an intersection frame to calculate the Layout Guide.

codebeat badge build test SwiftPM Compatible Version License Platform

Example

To run the example project, clone the repo, and run pod install from the Example directory first.

Requirements

  • Swift 5.1 or higher
  • iOS 10.0 or higher

Installation

Requirements

  • Swift 5.1 or higher
  • iOS 10.0 or higher

Cocoapods

Clavier is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod 'Clavier', '~> 1.0'

Swift Package Manager from XCode

  • Add it using XCode menu File > Swift Package > Add Package Dependency
  • Add https://github.com/hainayanda/Clavier.git as Swift Package URL
  • Set rules at version, with Up to Next Major option and put 1.0.2 as its version
  • Click next and wait

Swift Package Manager from Package.swift

Add as your target dependency in Package.swift

dependencies: [
    .package(url: "https://github.com/hainayanda/Clavier.git", .upToNextMajor(from: "1.0.2"))
]

Use it in your target as Clavier

 .target(
    name: "MyModule",
    dependencies: ["Clavier"]
)

Author

Nayanda Haberty, hainayanda@outlook.com

License

Clavier is available under the MIT license. See the LICENSE file for more info.


Basic Usage

Clavier is the Keyboard Layout Guide created to make constraints to the keyboard. It will automatically change on the keyboard changes. It calculates the intersection frame of the Keyboard and the UIView. As you can see in the picture below:

alt text

If the keyboard did not intersect with the view, it will always use the most bottom of the UIView with zero height for the regular one, or most bottom of the safe area when using a safe one

alt text

If the keyboard is hidden, it will always use the most bottom of the UIView with zero height for the regular one, or most bottom of the safe area when using a safe one

Usage

To use Clavier, just use keyboardLayoutGuide from any UIView, or safeKeyboardLayoutGuide if you prefer the one intersect with the safe area. it is an instance of KeyboardLayoutGuide class which extend UILayoutGuide so it has all its anchors, like topAnchor, leadingAnchor, etc:

myView.bottomAnchor.constraints(equalTo: mySuperview.keyboardLayoutGuide.topAnchor)

or with safe area:

myView.bottomAnchor.constraints(equalTo: mySuperview.safeKeyboardLayoutGuide.topAnchor)

myView will automatically move according to keyboard layout guide frame changes.

Since its subclass of UILayoutGuide, it has layoutFrame which is the intersection frame with keyboard frame, if you need it:

let frameIntersectWithKeyboard: CGRect = view.keyboardLayoutGuide.layoutFrame

or with safe area:

let frameIntersectWithKeyboard: CGRect = view.safeKeyboardLayoutGuide.layoutFrame

Contribute

You know how, just clone and do pull request

Description

  • Swift Tools 5.1.0
View More Packages from this Author

Dependencies

Last updated: Fri Oct 08 2021 06:36:58 GMT-0500 (GMT-05:00)