JustPeek 1.0.0

JustPeek 1.0.0

TestsTested
LangLanguage SwiftSwift
License Apache 2
ReleasedLast Release Dec 2017
SwiftSwift Version 4
SPMSupports SPM

Maintained by Alberto De Bortoli.



JustPeek 1.0.0

JustPeek Banner

JustPeek

JustPeek is an iOS Library that adds support for Force Touch-like Peek and Pop interactions on devices that do not natively support this kind of interaction. Under the hood it uses the native implementation if available, otherwise a custom implementation based on UILongPressGestureRecognizer.

JustPeek Demo

Usage

NOTE: JustPeek requires Swift 3

// In a UITableViewController

import JustPeek

...

var peekController: PeekController?

// MARK: View Lifecycle

override func viewDidLoad() {
    super.viewDidLoad()
    peekController = PeekController()
    peekController?.register(viewController: self, forPeekingWithDelegate: self, sourceView: tableView)
}

// MARK: PeekingDelegate

func peekContext(_ context: PeekContext, viewControllerForPeekingAt location: CGPoint) -> UIViewController? {
    let viewController = storyboard?.instantiateViewController(withIdentifier: "ViewController")
    if let viewController = viewController, let indexPath = tableView.indexPathForRow(at: location) {
        configureViewController(viewController, withItemAtIndexPath: indexPath)
        if let cell = tableView.cellForRow(at: indexPath) {
            context.sourceRect = cell.frame
        }
        return viewController
    }
    return nil
}

func peekContext(_ context: PeekContext, commit viewController: UIViewController) {
    show(viewController, sender: self)
}

Example

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

Installation

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

pod "JustPeek"

License

JustPeek is available under the Apache License, Version 2.0. See the LICENSE file for more info.