{"id":15293498,"url":"https://github.com/akhilcb/acbradialcollectionview","last_synced_at":"2025-04-13T13:31:28.585Z","repository":{"id":56900148,"uuid":"95420741","full_name":"akhilcb/ACBRadialCollectionView","owner":"akhilcb","description":"An extension on UICollectionView which automatically transforms collection view cells to a radial path","archived":false,"fork":false,"pushed_at":"2024-05-26T20:49:09.000Z","size":5738,"stargazers_count":39,"open_issues_count":1,"forks_count":7,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-04-12T21:16:40.334Z","etag":null,"topics":["arc","circular","collectionview","collectionviewlayout","extension","ios","ios-swift","radial","radial-menu","swift","swift3"],"latest_commit_sha":null,"homepage":null,"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/akhilcb.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-26T07:33:58.000Z","updated_at":"2025-04-01T13:10:26.000Z","dependencies_parsed_at":"2022-08-21T02:20:56.885Z","dependency_job_id":null,"html_url":"https://github.com/akhilcb/ACBRadialCollectionView","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akhilcb%2FACBRadialCollectionView","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akhilcb%2FACBRadialCollectionView/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akhilcb%2FACBRadialCollectionView/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akhilcb%2FACBRadialCollectionView/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/akhilcb","download_url":"https://codeload.github.com/akhilcb/ACBRadialCollectionView/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248721060,"owners_count":21151038,"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":["arc","circular","collectionview","collectionviewlayout","extension","ios","ios-swift","radial","radial-menu","swift","swift3"],"created_at":"2024-09-30T16:49:33.278Z","updated_at":"2025-04-13T13:31:23.562Z","avatar_url":"https://github.com/akhilcb.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ACBRadialCollectionView \u003ckbd\u003e\u003cimg src=\"/ACBRadialCollectionView/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png?raw=true\" width=\"32\"\u003e\u003c/kbd\u003e\n\n[![CocoaPods Compatible](https://img.shields.io/cocoapods/v/ACBRadialCollectionView.svg)](https://img.shields.io/cocoapods/v/ACBRadialCollectionView.svg)\n[![Carthage Compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)\n[![Platform](https://img.shields.io/cocoapods/p/ACBRadialCollectionView.svg?style=flat)](https://github.com/akhilcb/ACBRadialCollectionView)\n[![License](https://img.shields.io/cocoapods/l/ACBRadialCollectionView.svg?style=flat)](http://cocoapods.org/pods/ACBRadialCollectionView)\n\n\nThis is an extension on UICollectionView which automatically transforms collection view cells to a radial path with minimal code. \nThis is written in Swift language. No need to subclass UICollectionView for this. CollectionView will also display an arc shaped scroll bar next to the cells which acts similar to the normal scroll bar. \n\nUsing this approach, we can support multiple collectionviews on one screen as shown below(_Note: number of sections should be 1 for all collection views_). Each will have its own scrolling and scroll direction can also be changed for each of them separately.\n\n## Demo\n\u003ckbd\u003e\n\u003cdiv\u003e\n\u003cimg src=\"/ACBRadialCollectionView/Screenshots/ACBRadialCVgif1.gif?raw=true\" width=\"260\"\u003e\n\u003cimg src=\"/ACBRadialCollectionView/Screenshots/ACBRadialCVgif2.gif?raw=true\" width=\"260\"\u003e\n\u003cimg src=\"/ACBRadialCollectionView/Screenshots/ACBRadialCVgif3.gif?raw=true\" width=\"260\"\u003e\n\u003c/div\u003e\n\u003c/kbd\u003e\n\n\u003cdiv\u003e\u003cbr\u003e\u003c/div\u003e\n\n## Setup\n\nCarthage or Cocoapods can be used to integrate this to a project. \n\n### Carthage\n\n```\ngithub \"akhilcb/ACBRadialCollectionView\" ~\u003e 2.0\n\n```\n\n### Cocoapods\n\n```\npod 'ACBRadialCollectionView'\n\n```\n\nThis can be manually integrated to the project by following the code in __ACBViewController__. \n\n\t1. Copy all files to your Xcode project. \"UICollectionView+ACBRadialCollectionView\" is the extension class file.\n\t2. Invoke the method \"enableRadialLayout\" on your UICollectionView with required input params.\n  \nFor eg:-\n\n\tlet center = CGPoint(x: 50, y: 100)\n\tlet radius: CGFloat =  100\n\tlet cellSize = CGSize(width: 50, height: 50)\n\tlet startAngle =  CGFloat(0)\n\tlet endAngle = CGFloat.pi / 2\n\tlet direction = ACBRadialCollectionViewScrollDirection.clockwise\n  \n    self.collectionView.enableRadialLayout(WithCenter: center, radius: radius, cellSize: cellSize, angularSpacing: 20.0, scrollDirection: direction, startAngle: startAngle, endAngle: endAngle) //repeat this for other collectionviews too\n    \nYou can also control whether the cells needs to be rotated to an angle(_Note: This works only if you have called enableRadialLayout before setting this, default value is true_).\n \n    self.collectionView.applyRotationToCells = false\n\n## Screenshots\n\u003ckbd\u003e\n\u003cdiv\u003e\n\u003cimg src=\"/ACBRadialCollectionView/Screenshots/ACBRadialCollectionViewFirst.png?raw=true\" width=\"260\"\u003e\n\u003cimg src=\"/ACBRadialCollectionView/Screenshots/ACBRadialCollectionViewSecond.png?raw=true\" width=\"260\"\u003e\n\u003cimg src=\"/ACBRadialCollectionView/Screenshots/ACBRadialCollectionViewThird.png?raw=true\" width=\"260\"\u003e\n\u003c/div\u003e\n\u003c/kbd\u003e\n\n## License\n\nMIT License\n\nCopyright (c) 2017, Akhil C Balan(https://github.com/akhilcb)\n\nAll rights reserved.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fakhilcb%2Facbradialcollectionview","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fakhilcb%2Facbradialcollectionview","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fakhilcb%2Facbradialcollectionview/lists"}