{"id":13769772,"url":"https://github.com/Ahmadalsofi/SOPullUpView","last_synced_at":"2025-05-11T02:33:32.690Z","repository":{"id":62454170,"uuid":"225613456","full_name":"Ahmadalsofi/SOPullUpView","owner":"Ahmadalsofi","description":" SOPullUpView library for iOS, with pull up gesture 📱🖐️↕️","archived":false,"fork":false,"pushed_at":"2020-01-01T14:28:37.000Z","size":13643,"stargazers_count":198,"open_issues_count":7,"forks_count":24,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-11-09T08:48:29.631Z","etag":null,"topics":["music","podfile","pullup","sopullupview-library"],"latest_commit_sha":null,"homepage":"","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Ahmadalsofi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-12-03T12:22:59.000Z","updated_at":"2024-03-14T20:46:33.000Z","dependencies_parsed_at":"2022-11-02T00:00:55.277Z","dependency_job_id":null,"html_url":"https://github.com/Ahmadalsofi/SOPullUpView","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ahmadalsofi%2FSOPullUpView","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ahmadalsofi%2FSOPullUpView/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ahmadalsofi%2FSOPullUpView/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ahmadalsofi%2FSOPullUpView/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Ahmadalsofi","download_url":"https://codeload.github.com/Ahmadalsofi/SOPullUpView/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225004669,"owners_count":17405658,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["music","podfile","pullup","sopullupview-library"],"created_at":"2024-08-03T17:00:31.390Z","updated_at":"2024-11-17T05:31:37.429Z","avatar_url":"https://github.com/Ahmadalsofi.png","language":"Swift","funding_links":[],"categories":["Sheet","Swift"],"sub_categories":[],"readme":"# SOPullUpView\n\n[![Version](https://img.shields.io/cocoapods/v/SOPullUpView.svg?style=flat)](https://cocoapods.org/pods/SOPullUpView)\n[![License](https://img.shields.io/cocoapods/l/SOPullUpView.svg?style=flat)](https://cocoapods.org/pods/SOPullUpView)\n[![Platform](https://img.shields.io/cocoapods/p/SOPullUpView.svg?style=flat)](https://cocoapods.org/pods/SOPullUpView)\n\n\n\u003cimg src=\"https://github.com/Ahmadalsofi/SOPullUpView/blob/master/first.gif\" height=\"500\"/\u003e   \u003cimg src=\"https://github.com/Ahmadalsofi/SOPullUpView/blob/master/second.gif\" height=\"500\"/\u003e   \u003cimg src=\"https://github.com/Ahmadalsofi/SOPullUpView/blob/master/third.gif\" height=\"500\"/\u003e\n\n## Installation\n\n\nSOPullUpView is available through [CocoaPods](https://cocoapods.org). To install\nit, simply add the following line to your Podfile:\n\n```ruby\npod 'SOPullUpView'\n```\n\n\n## Basic usage\n\n1. Add `pod 'SOPullUpView'` to your Podfile.\n\n2. 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.\n  As an example, defines SOPullUpControl and assign the datasource and init the view to be the PullUpViewController\n        \n     ```swift\n  \n       let pullUpController = SOPullUpControl()\n       \n       override func viewDidLoad() {\n          super.viewDidLoad()\n           pullUpController.dataSource = self\n           pullUpController.setupCard(from: view)\n        }\n      ```\n3. Make sure the main view controller that will adopt SOPullUpViewDataSource \n   * pullUpViewCollapsedViewHeight ...startViewHeightForPullUpViewController... \n   \n      As an example, the StartViewHeight is determined by the following delegate callback:\n   \n      ```swift\n         func pullUpViewCollapsedViewHeight() -\u003e CGFloat {\n             return  100.0\n           }\n       ```\n   * pullUpViewController ...UIViewController as child of your main controller...\n   \n      ```swift\n        func pullUpViewController() -\u003e UIViewController {\n           guard let vc = UIStoryboard(name: StoryBoardName, bundle: nil).instantiateInitialViewController() as? YourPullUpView else {return UIViewController()}\n           vc.pullUpControl = self.pullUpController\n           return vc\n        }\n       ```\n   \n   * pullUpViewExpandedViewHeight  ...maximumHeightForPullUpViewController... (Optional method)\n   \n   \n4. In the PullUpViewController defines an instance from SOPullUpControl to be initialized from the ParentViewContrroler\n\n   ```swift\n    var pullUpControl: SOPullUpControl? {\n        didSet {\n            pullUpControl?.delegate = self\n        }\n    }\n   ```\n   \n5. finally just adopt the SOPullUpViewDelegate in the pullUpViewController \n\n    * pullUpViewStatus ...will trigger the status of the pull Up View when it's collapsed and expanded...\n    \n      ```swift\n         func pullUpViewStatus(_ sender: UIViewController, didChangeTo status: PullUpStatus) {\n             switch status {\n               case .collapsed:\n               case .expanded:\n            }\n           }\n       ```    \n       \n    * pullUpHandleArea ... return the view that will handle the action of the user when click on it, will collapse and expand the pullUpViewController....\n    \n      ```swift\n        func pullUpHandleArea(_ sender: UIViewController) -\u003e UIView {\n            return handleArea\n        }\n       ```     \n\n## Example\n\nTo run the example project, clone the repo, and run `pod install` from the Example directory first.\n\n## Author\n\nAhmadalsofi,  alsofiahmad@yahoo.com\n\n## Reference\n\nBrian Advent\n\n## License\n\nSOPullUpView is available under the MIT license. See the LICENSE file for more info.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FAhmadalsofi%2FSOPullUpView","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FAhmadalsofi%2FSOPullUpView","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FAhmadalsofi%2FSOPullUpView/lists"}