Git Product home page Git Product logo

swiftydrop's Introduction

SwiftyDrop

SwiftyDrop is a lightweight pure Swift simple and beautiful dropdown message.

Version License Platform Carthage compatible Join the chat at https://gitter.im/morizotter/SwiftyDrop

##Features

  • Easy to use like: Drop.down("Message")
  • Message field expands depending on the message.

##How it looks

States

Default Success Warning Error

Blurs

Light Dark

iPad

iPad

##Runtime Requirements

  • iOS8.1 or later
  • Xcode 7.0

Installation and Setup

Note: Embedded frameworks require a minimum deployment target of iOS 8.1.

Information: To use SwiftyDrop with a project targeting iOS 8.0 or lower, you must include the SwiftyDrop/Drop.swift source file directly in your project.

###Installing with CocoaPods

CocoaPods is a centralised dependency manager that automates the process of adding libraries to your Cocoa application. You can install it with the following command:

$ gem update
$ gem install cocoapods
$ pods --version

To integrate TouchVisualizer into your Xcode project using CocoaPods, specify it in your Podfile and run pod install.

platform :ios, '8.1'
use_frameworks!
pod 'SwiftyDrop', '~>2.0'

###Installing with Carthage

Just add to your Cartfile:

github "morizotter/SwiftyDrop" ~> 2.0

###Manual Installation

To install SwiftyDrop without a dependency manager, please add all of the files in /SwiftyDrop to your Xcode Project.

##Usage

Basic

To start using SwiftyDrop, write the following line wherever you want to show dropdown message:

import SwiftyDrop

Then invoke SwiftyDrop, by calling:

Drop.down("Message")

It is really simple!

States and Blurs

SwiftyDrop has states of display. You can customize looks by comforming DropStatable protocol. Examples are:

States

Drop.down("Message")
Drop.down("Message", state: .Success)
Drop.down("Message", state: .Color(.orangeColor()))
Drop.down("Message", state: .Blur(.Light))

Duration

Drop.down("Message", duration: 3.0)

You can change duration like this above. Default duration is 4.0.

Custom states

enum Custom: DropStatable {
    case BlackGreen
    var backgroundColor: UIColor? {
        switch self {
        case .BlackGreen: return .blackColor()
        }
    }
    var font: UIFont? {
        switch self {
        case .BlackGreen: return UIFont(name: "HelveticaNeue-Light", size: 24.0)
        }
    }
    var textColor: UIColor? {
        switch self {
            case .BlackGreen: return .greenColor()
        }
    }
    var blurEffect: UIBlurEffect? {
        switch self {
        case .BlackGreen: return nil
        }
    }
}

Drop.down(self.sampleText(), state: Custom.BlackGreen)

Of course you can use class or struct to make custom state if it is comforming to DropStatable protocol.

Prepared States are enum:

  • .Default
  • .Info
  • .Success
  • .Warning
  • .Error
  • .Color: UIColor
  • .Blur: UIBlurEffectStyle

##Contributing

Please file issues or submit pull requests for anything you’d like to see! We're waiting! :)

##Licensing SwiftyDrop is released under the MIT license. Go read the LICENSE file for more information.

swiftydrop's People

Contributors

efremidze avatar gitter-badger avatar morizotter 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.