Giter Site home page Giter Site logo

jdjellybutton's Introduction

JDJellyButton


#Introduction

JDJellyButton is a highly-cutomization navigation Button.

You can manage your own button group.

Of course, you can recive notification when the button has been tap by implements delegate.

Thanks for using.

Alt text

###Button Image Source: http://www.flaticon.com/authors/freepik


##Switch Button Group To Switch Button Group, you just need to hold on Mainbutton for 1.5 second.

Alt text

#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)

Alt text

###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)"
    }
    
}

Alt text

jdjellybutton's People

Contributors

jamesdouble avatar

Watchers

James Cloos avatar yuzhang avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.