PresenterKit 
Custom presenters and better view controller presentation for iOS
Requirements
- Xcode 12.0+
- Swift 5.3+
- iOS 11.0+
- SwiftLint
Installation
CocoaPods
pod 'PresenterKit', '~> 6.1.0'
# develop branch
pod 'PresenterKit', :git => 'https://github.com/jessesquires/PresenterKit.git', :branch => 'develop'
Swift Package Manager
Add PresenterKit
to the dependencies
value of your Package.swift
.
dependencies: [
.package(url: "https://github.com/jessesquires/PresenterKit.git", from: "6.1.0")
]
Alternatively, you can add the package directly via Xcode.
Documentation
You can read the documentation here. Generated with jazzy. Hosted by GitHub Pages.
Contributing
Interested in making contributions to this project? Please review the guides below.
Also, consider sponsoring this project or buying my apps! ✌️
Credits
Created and maintained by @jesse_squires.
License
Released under the MIT License. See LICENSE
for details.
Copyright © 2016-present Jesse Squires.
Github
link |
Stars: 509 |
You may find interesting
Releases
6.1.1 - 2020-09-25T20:26:23
This release closes the 6.1.1 milestone.
- Upgraded to Xcode 12 and Swift 5.3
6.1.0 - 2020-04-18T20:13:29
This release closes the 6.1.0 milestone.
New
- Added a new custom presentation controller,
HalfModalPresentationController
- Support for Swift Package Manager
Changed
- Upgrade to Swift 5.2
- Update to Xcode 11.4
- Upgrade SwiftLint
- Switch to GH Actions
6.0.0 - 2019-09-21T19:27:15
This release closes the 6.0.0 milestone.
Breaking
- iOS 11 minimum deployment target (Dropped iOS 10)
- Renamed
present()
function topresentController()
to avoid ambiguous naming with UIKit
Changed
- Swift 5.1
- Xcode 11
- Upgrade Swiftlint to 0.35.0, add new rules
- Update Travis CI
5.1.0 - 2018-11-09T16:02:26
This release closes the 5.1.0 milestone.
- Upgrade to Swift 4.2
- Xcode 10.1
- Upgrade Swiftlint to 0.27.0
5.0.0 - 2018-07-09T01:37:18
This release closes the 5.0.0 milestone.
Breaking
- Swift 4.1
- iOS 10 minimum deployment target (Dropped iOS 9)
- Xcode 9.4
- Upgrade Swiftlint to 0.26.0
- Renamed
dismiss()
function todismissController()
to avoid ambiguous naming with UIKit (#41)
Fixed
- Respect transition context
.isCancelled
when pushing on a navigation stack (#38)
New
-
Add new
pop()
method extension onUINavigationController
that accepts acompletion
parameter. Similar to existingpush()
method (#40) -
Added
completion
parameter todismiss()
method extension onUIViewController
(#41)
4.0.0 - 2017-09-23T23:50:30
This release closes the 4.0.0 milestone.
Breaking changes
-
Converted to Swift 4
-
iOS 9 minimum deployment target
-
public struct PopoverConfig
was changed to accommodate custom frame so it can be used as anchor for the popover. (#27, #26, @psartzetakis)PopoverConfig.Source.view(_)
was changed toPopoverConfig.Source.view(container: frame:)
-
public struct DismissButtonConfig
was changed to accommodate custom images in bar button items. (#24, #22, @psartzetakis)DismissButtonConfig.text
was renamed toDismissButtonConfig.content
public enum DismissButtonConfig.Text
was renamed topublic enum DismissButtonConfig.Content
and it now has 3 cases:.systemItem
,.text
,.image
DismissButtonConfig.init(location: style: text:)
was renamed toDismissButtonConfig.init(location: style: content:)
3.0.0 - 2016-09-30T12:36:05
This release closes the 3.0.0 milestone.
Swift 3.0 now required.
Changes
presentViewController(_:, type:, animated:)
was renamed topresent(_:, type:, animated:)
New
- Added a
.none
case toPresentationType
which uses UIKit defaults. Use this when presenting system controllers likeUIAlertController
.
Bug fixes
- Fixed bug in
withStyles()
where modal presentation/transition styles might not be applied correctly (#24).
2.0.0 - 2016-09-21T10:30:27
This release closes the 2.0.0 milestone.
Swift 2.3 now required.
1.0.0 - 2016-04-08T06:17:54
Initial release :tada: