{"id":2772,"url":"https://github.com/agilie/AGCircularPicker","last_synced_at":"2025-08-06T14:32:56.096Z","repository":{"id":46629743,"uuid":"95232657","full_name":"agilie/AGCircularPicker","owner":"agilie","description":"AGCircularPicker is helpful component for creating a controller aimed to manage any calculated parameter","archived":false,"fork":false,"pushed_at":"2018-05-21T10:33:12.000Z","size":121,"stargazers_count":627,"open_issues_count":3,"forks_count":56,"subscribers_count":17,"default_branch":"master","last_synced_at":"2024-09-21T04:10:10.154Z","etag":null,"topics":["circular","clock","clockpicker","picker","pickerview","volume-control"],"latest_commit_sha":null,"homepage":"https://agilie.com","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/agilie.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":"2017-06-23T15:28:22.000Z","updated_at":"2024-06-03T08:35:46.000Z","dependencies_parsed_at":"2022-08-21T02:20:43.960Z","dependency_job_id":null,"html_url":"https://github.com/agilie/AGCircularPicker","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agilie%2FAGCircularPicker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agilie%2FAGCircularPicker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agilie%2FAGCircularPicker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agilie%2FAGCircularPicker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/agilie","download_url":"https://codeload.github.com/agilie/AGCircularPicker/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228915455,"owners_count":17991408,"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":["circular","clock","clockpicker","picker","pickerview","volume-control"],"created_at":"2024-01-05T20:16:22.441Z","updated_at":"2024-12-09T15:30:47.895Z","avatar_url":"https://github.com/agilie.png","language":"Swift","funding_links":[],"categories":["UI","Libs","Picker","Swift","UI [🔝](#readme)","Content"],"sub_categories":["Slider","UI","Other free courses"],"readme":"\u003cp align=\"center\"\u003e\n\n\u003cimg src=\"https://user-images.githubusercontent.com/4165054/27869128-a00026e2-61a7-11e7-978f-451bcd304a2b.png\" alt=\"AGCircularPicker\" title=\"AGCircularPicker\" width=\"557\"/\u003e\n\u003c/p\u003e\n\n\u003cp\u003e\n\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n\n\u003ca href=\"https://www.agilie.com?utm_source=github\u0026utm_medium=referral\u0026utm_campaign=Git_Swift\u0026utm_term=AGCircularPicker\"\u003e\n\u003cimg src=\"https://img.shields.io/badge/Made%20by-Agilie-green.svg?style=flat\" alt=\"Made by Agilie\"\u003e\n\u003c/a\u003e\n\n\u003ca href=\"https://travis-ci.org/savilov/AGCircularPicker\"\u003e\n\u003cimg src=\"http://img.shields.io/travis/agilie/AGCircularPicker.svg?style=flat\" alt=\"CI Status\"\u003e\n\u003c/a\u003e\n\n\u003ca href=\"http://cocoapods.org/pods/AGCircularPicker\"\u003e\n\u003cimg src=\"https://img.shields.io/cocoapods/v/AGCircularPicker.svg?style=flat\" alt=\"Version\"\u003e\n\u003c/a\u003e\n\n\u003ca href=\"http://cocoapods.org/pods/AGCircularPicker\"\u003e\n\u003cimg src=\"https://img.shields.io/cocoapods/l/AGCircularPicker.svg?style=flat\" alt=\"License\"\u003e\n\u003c/a\u003e\n\n\u003ca href=\"http://cocoapods.org/pods/AGCircularPicker\"\u003e\n\u003cimg src=\"https://img.shields.io/cocoapods/p/AGCircularPicker.svg?style=flat\" alt=\"Platform\"\u003e\n\u003c/a\u003e\n\n\u003c/p\u003e\n\nWe are pleased to offer you our new free lightweight plugin named AGCircularPicker.\n\nAGCircularPicker is helpful for creating a controller aimed to manage any calculated parameter. For example, it can be used as a countdown timer or for keeping the score in the game interface.\n\nAGCircularPicker can be customized to meet your individual requirements. The developer can set the number of the controllers and their design by selecting a color, gradient and other similar parameters. In addition, it’s possible to specify the transition type for showing controllers on the screen.\n\n## Link to Android repo\n\nCheck out our Android [CircularPicker](https://github.com/agilie/CircularPicker)\n\n## Installation\n\nAGCircularPicker is available through [CocoaPods](http://cocoapods.org). To install\nit, simply add the following line to your Podfile:\n\n```ruby\npod \"AGCircularPicker\"\n```\n\n## Demo\n\n\u003cimg src=\"https://user-images.githubusercontent.com/4165054/28356889-3d13f6f0-6c72-11e7-922e-e6d8c11fdfc7.png\" alt=\"Volume Picker Sreenshot\" width =\"240\"\u003e \u003cimg src=\"https://j.gifs.com/1jJy8m.gif\" alt=\"Volume Picker Demo\" width=\"240\"\u003e \u003cimg src=\"https://j.gifs.com/58NDNK.gif\" alt=\"Time Picker Demo\" width=\"240\"\u003e\n\n## Example\n\nTo run the example project, clone the repo, and run `pod install` from the Example directory first.\n\n## Usage\n\n```swift\nimport AGCircularPicker\n```\n\nAGCircularPickerView could be used either from Interface Builder by linking outlet or from the code.\n\nThe main requirement to let it work is to setup AGCircularPickerOption. Once it is set picker will automatically setup all required data.\n\n```swift\npublic struct AGCircularPickerOption {\n\n    var titleOption: AGCircularPickerTitleOption? = nil\n    var valueOption: AGCircularPickerValueOption!\n    var colorOption: AGCircularPickerColorOption = AGCircularPickerColorOption()\n\n}\n```\n\nIt consists of three option groups: AGCircularPickerTitleOption (defines title, it's color and font), AGCircularPickerValueOption (defines min and max values and number of rounds) and AGCircularPickerColorOption (defines gradient colors, gradient locations and angle)\n\nAGCircularPickerValueOption is required whereas two others are optionals.\n\nIf AGCircularPickerTitleOption is empty control will have no title.\n\nIf AGCircularPickerColorOption is not set control will use default colors.\n\nAGCircularPickerView has a delegate to notify about any changes \n\n```swift\npublic protocol AGCircularPickerViewDelegate {\n\n    func circularPickerViewDidChangeValue(_ value: Int, color: UIColor, index: Int)\n    func circularPickerViewDidEndSetupWith(_ value: Int, color: UIColor, index: Int)\n    func didBeginTracking(timePickerView: AGCircularPickerView)\n    func didEndTracking(timePickerView: AGCircularPickerView)\n\n}\n```\n\nLet's see how we can use it in practice. First we should link it in the Interface Builder\n\n```swift\n@IBOutlet weak var circularPickerView: AGCircularPickerView!\n```\n\nThen we should define required options and setup control with it and delegate if needed\n\n```swift\noverride func viewDidLoad() {\n    super.viewDidLoad()\n    let valueOption = AGCircularPickerValueOption(minValue: 0, maxValue: 100)\n    let titleOption = AGCircularPickerTitleOption(title: \"volume\")\n    let option = AGCircularPickerOption(valueOption: valueOption, titleOption: titleOption)\n    pickerView.setupPicker(delegate: self, option: option)\n}\n```\n\nFor more details please see our example\n\n## Troubleshooting\nProblems? Check the [Issues](https://github.com/agilie/AGCircularPicker/issues) block\nto find the solution or create an new issue that we will fix asap. Feel free to contribute.\n\n\n## Author\nThis iOS visual component is open-sourced by [Agilie Team](https://www.agilie.com?utm_source=github\u0026utm_medium=referral\u0026utm_campaign=Git_Swift\u0026utm_term=AGCircularPicker) \u003cinfo@agilie.com\u003e\n\n\n## Contributors\n- [Sergii Avilov](https://github.com/savilov)\n\n\n## Contact us\nIf you have any questions, suggestions or just need a help with web or mobile development, please email us at\n\u003cios@agilie.com\u003e. You can ask us anything from basic to complex questions.\n\n## License\n\nAGCircularPicker is available under\nThe [MIT](LICENSE.md) License (MIT) Copyright © 2017 [Agilie Team](https://www.agilie.com?utm_source=github\u0026utm_medium=referral\u0026utm_campaign=Git_Swift\u0026utm_term=AGCircularPicker)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fagilie%2FAGCircularPicker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fagilie%2FAGCircularPicker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fagilie%2FAGCircularPicker/lists"}