{"id":13714711,"url":"https://github.com/JustinFincher/JZMultiChoicesCircleButton","last_synced_at":"2025-05-07T03:30:54.112Z","repository":{"id":56916847,"uuid":"45500043","full_name":"JustinFincher/JZMultiChoicesCircleButton","owner":"JustinFincher","description":":radio_button: Multi choice circle button with cool 3d parallax effect, but seriously don't use this in production now, I will rewrite it to a delegate based UIControl when I am available.","archived":false,"fork":false,"pushed_at":"2020-01-18T21:54:29.000Z","size":4669,"stargazers_count":378,"open_issues_count":2,"forks_count":40,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-04-07T07:09:15.568Z","etag":null,"topics":["animation","animation-3d","ios-animation","multi-choices-button","uibutton"],"latest_commit_sha":null,"homepage":"https://dribbble.com/shots/2333536-ParallaxCircleButton","language":"Objective-C","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/JustinFincher.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":"2015-11-03T22:31:08.000Z","updated_at":"2024-11-11T21:50:38.000Z","dependencies_parsed_at":"2022-08-20T21:20:19.798Z","dependency_job_id":null,"html_url":"https://github.com/JustinFincher/JZMultiChoicesCircleButton","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JustinFincher%2FJZMultiChoicesCircleButton","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JustinFincher%2FJZMultiChoicesCircleButton/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JustinFincher%2FJZMultiChoicesCircleButton/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JustinFincher%2FJZMultiChoicesCircleButton/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JustinFincher","download_url":"https://codeload.github.com/JustinFincher/JZMultiChoicesCircleButton/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252806377,"owners_count":21807194,"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":["animation","animation-3d","ios-animation","multi-choices-button","uibutton"],"created_at":"2024-08-03T00:00:39.596Z","updated_at":"2025-05-07T03:30:51.318Z","avatar_url":"https://github.com/JustinFincher.png","language":"Objective-C","funding_links":[],"categories":["Project List"],"sub_categories":["MultiChoicesCircleButton"],"readme":"# JZMultiChoicesCircleButton\n![JZ.jpg](https://github.com/JustinFincher/JZMultiChoicesCircleButton/raw/master/DemoPic/JZ.jpg)  \n\n[![CI Status](http://img.shields.io/travis/Fincher Justin/JZMultiChoicesCircleButton.svg?style=flat)](https://travis-ci.org/Fincher Justin/JZMultiChoicesCircleButton)\n[![Version](https://img.shields.io/cocoapods/v/JZMultiChoicesCircleButton.svg?style=flat)](http://cocoapods.org/pods/JZMultiChoicesCircleButton)\n[![License](https://img.shields.io/cocoapods/l/JZMultiChoicesCircleButton.svg?style=flat)](http://cocoapods.org/pods/JZMultiChoicesCircleButton)\n[![Platform](https://img.shields.io/cocoapods/p/JZMultiChoicesCircleButton.svg?style=flat)](http://cocoapods.org/pods/JZMultiChoicesCircleButton)\n\n#Introduction\nJZMultiChoicesCircleButton is a Multi-choices button.  \nJust tap it and hold to your choice! yeah ,so cool, such easy.   \nIt's inspired by Nicola Felasquez Felaco's [work](https://dribbble.com/shots/2293573-Pubbblish)  \nAnd This is my [implementation](https://dribbble.com/shots/2333536-ParallaxCircleButton) using ObjC, demo gif:   \n![DemoGiF.gif](https://github.com/JustinFincher/JZMultiChoicesCircleButton/raw/master/DemoPic/DemoGiF.gif) \n\n## Usage\n\nTo run the example project, clone the repo, and run `pod install` from the Example directory first.\n\n```\n#import \"JZMultiChoicesCircleButton.h\"\n\n- (void)viewDidLoad {\n    [super viewDidLoad];\n\n    NSArray *IconArray = [NSArray arrayWithObjects: [UIImage imageNamed:@\"SendRound\"],[UIImage imageNamed:@\"CompleteRound\"],[UIImage imageNamed:@\"CalenderRound\"],[UIImage imageNamed:@\"MarkRound\"],nil];\n    NSArray *TextArray = [NSArray arrayWithObjects: [NSString stringWithFormat:@\"Send\"],[NSString stringWithFormat:@\"Complete\"],[NSString stringWithFormat:@\"Calender\"],[NSString stringWithFormat:@\"Mark\"], nil];\n    NSArray *TargetArray = [NSArray arrayWithObjects:[NSString stringWithFormat:@\"ButtonOne\"],[NSString stringWithFormat:@\"ButtonTwo\"],[NSString stringWithFormat:@\"ButtonThree\"],[NSString stringWithFormat:@\"ButtonFour\"] ,nil];\n    \n    NewBTN = [[JZMultiChoicesCircleButton alloc] initWithCenterPoint:CGPointMake(self.view.frame.size.width / 2 , self.view.frame.size.height / 2 )\n                                                                                      ButtonIcon:[UIImage imageNamed:@\"send\"]\n                                                                                     SmallRadius:30.0f\n                                                                                       BigRadius:120.0f\n                                                                                    ButtonNumber:4\n                                                                                      ButtonIcon:IconArray\n                                                                                      ButtonText:TextArray\n                                                                                    ButtonTarget:TargetArray\n                                                                                     UseParallex:YES\n                                                                               ParallaxParameter:300\n                                                                           RespondViewController:self];\n    [self.view addSubview:NewBTN];\n    \n}\n\n```\n**ButtonIcon**: UIImage,the icon in the small button  \n**SmallRadius and BigRadius**: CGFloat, Small button radius and the size when it's animated  \n**ButtonNumber**: int, how many buttons  \n**ButtonIcon**: NSArray of UIImage   \n**ButtonText**: NSArray of NSString  \n**ButtonTarget** : NSArray of NSString,just String of selector and JZMultiChoicesCircleButton will use NSSelectorFromString to transform it to SEL  \n**UseParallex** : BOOL, if YES will be 3D-like, or just 2D with no Parallex effect.  \n**ParallaxParameter**: CGFloat,bigger than 0, the smaller the cooler Parallex effect will be  \n**RespondViewController**: should be UIViewcontroller,the responder, simply 'self' will be ok.  \n\n```\n- (void)SuccessLoadData\n{\n    [NewBTN SuccessCallBackWithMessage:@\"YES!\"];\n}\n- (void)ErrorLoadData\n{\n    [NewBTN FailedCallBackWithMessage:@\"NO...\"];\n}\n```\nUse SuccessCallBackWithMessage and FailedCallBackWithMessage to show the animated infomation , or button will be **full screen and don't disappear!!!!**\n\n\n\n## Installation\n\nJZMultiChoicesCircleButton is available through [CocoaPods](http://cocoapods.org). To install\nit, simply add the following line to your Podfile:\n\n```ruby\npod \"JZMultiChoicesCircleButton\"\n```\n\nOr just grab JZMultiChoicesCircleButton.h and .m from github,   \nEdit  \n```\n[UIImage imageNamed:@\"CallbackSuccess\" inBundle:bundle compatibleWithTraitCollection:nil];\n```  \nWith  \n```\n[UIImage imageNamed:@\"CallbackSuccess\"];\n```    \nand grab CallbackSuccess.png and CallbackWrong.png.\n\n\n##TO-DO \n\n1.Rewrite using scale down animation to prevent the blur CATextlayer\n\n## Author\n\nFincher Justin, zhtsu47@me.com\n\n## License\n\nJZMultiChoicesCircleButton 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%2FJustinFincher%2FJZMultiChoicesCircleButton","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FJustinFincher%2FJZMultiChoicesCircleButton","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FJustinFincher%2FJZMultiChoicesCircleButton/lists"}