项目介绍:
JDJellyButton
https://github.com/jamesdouble/JDJellyButton
Introduction
Jelly Button是一个高度定制的导航按钮。
您可以管理自己的按钮组。
当按钮被实现代理点击时,你可以收到通知。
Switch Button Group
To Switch Button Group, you just need to hold on Mainbutton for 1.5 second.
Usage
To add JellyButton to your view, you need to designate the attached view and the Main button image.
button = JDJellyButton()
button.attachtoView(rootView: self.view,mainbutton: UIImage(named:"vk")!)
button.delegate = self //Optional
button.datasource = self
Important
Also you need to implements the protocol JDJellyButtonDataSource ,designating your button group count and image array in specific group.
let images:[UIImage] = [UIImage(named: "badoo")!,UIImage(named: "behance")!,UIImage(named: "deviantart")!]
let images2:[UIImage] = [UIImage(named: "dribbble")!,UIImage(named: "facebook")!,UIImage(named: "flickr")!]
let images3:[UIImage] = [UIImage(named: "google-plus")!,UIImage(named: "instagram")!,UIImage(named:"lastfm")!,UIImage(named: "linkedin")!]
var imagearr:[[UIImage]] = [[UIImage]]()
extension ViewController:JDJellyButtonDataSource
{
func groupcount()->Int
{
return 3
}
func imagesource(forgroup groupindex:Int) -> [UIImage]
{
return imagearr[groupindex]
}
}
Change Expanding Type
There’re some button expanding type you can choose.
/*
enum JellyButtonExpandType
{
case Cross
case LeftLine
case RightLine
case UpperLine
}
*/
button.setJellyType(type: .Cross)
Delegate(Optional))
If you want to get notification when user tap one of buttons, you can implement JellyButtonDelegate
extension ViewController:JellyButtonDelegate
{
func JellyButtonHasBeenTap(touch:UITouch,image:UIImage,groupindex:Int,arrindex:Int)
{
self.exampleimg.image = image
label1.text = "Group Index:\(groupindex)"
label2.text = "ArrIndex\(arrindex)"
}
}