Skip to content

tab-media/SwiftyDrop

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

126 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.

About

Lightweight dropdown message bar in Swift. It's simple and beautiful.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • Swift 88.3%
  • Ruby 9.6%
  • Objective-C 2.1%