SOPullUpView
Installation
SOPullUpView is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod 'SOPullUpView'Basic usage
-
Add
pod 'SOPullUpView'to your Podfile. -
The main part of the library SOPullUpView. It defines an instance of SOPullUpControl where a MainViewController, called the SOPullUpView , can be dragged up and down, hiding or revealing the content. As an example, defines SOPullUpControl and assign the datasource and init the view to be the PullUpViewController
let pullUpController = SOPullUpControl() override func viewDidLoad() { super.viewDidLoad() pullUpController.dataSource = self pullUpController.setupCard(from: view) }
-
Make sure the main view controller that will adopt SOPullUpViewDataSource
-
pullUpViewCollapsedViewHeight ...startViewHeightForPullUpViewController...
As an example, the StartViewHeight is determined by the following delegate callback:
func pullUpViewCollapsedViewHeight() -> CGFloat { return 100.0 }
-
pullUpViewController ...UIViewController as child of your main controller...
func pullUpViewController() -> UIViewController { guard let vc = UIStoryboard(name: StoryBoardName, bundle: nil).instantiateInitialViewController() as? YourPullUpView else {return UIViewController()} vc.pullUpControl = self.pullUpController return vc }
-
pullUpViewExpandedViewHeight ...maximumHeightForPullUpViewController... (Optional method)
-
-
In the PullUpViewController defines an instance from SOPullUpControl to be initialized from the ParentViewContrroler
var pullUpControl: SOPullUpControl? { didSet { pullUpControl?.delegate = self } }
-
finally just adopt the SOPullUpViewDelegate in the pullUpViewController
-
pullUpViewStatus ...will trigger the status of the pull Up View when it's collapsed and expanded...
func pullUpViewStatus(_ sender: UIViewController, didChangeTo status: PullUpStatus) { switch status { case .collapsed: case .expanded: } }
-
pullUpHandleArea ... return the view that will handle the action of the user when click on it, will collapse and expand the pullUpViewController....
func pullUpHandleArea(_ sender: UIViewController) -> UIView { return handleArea }
-
Example
To run the example project, clone the repo, and run pod install from the Example directory first.
Author
Ahmadalsofi, alsofiahmad@yahoo.com
Reference
Brian Advent
License
SOPullUpView is available under the MIT license. See the LICENSE file for more info.

Formed in 2009, the Archive Team (not to be confused with the archive.org Archive-It Team) is a rogue archivist collective dedicated to saving copies of rapidly dying or deleted websites for the sake of history and digital heritage. The group is 100% composed of volunteers and interested parties, and has expanded into a large amount of related projects for saving online and digital history.



