Popularity
6.3
Stable
Activity
0.0
Stable
691
13
76

Code Quality Rank: L4
Programming language: Swift
License: MIT License
Tags: UI    
Latest version: v4.2.0

SwiftyDrop alternatives and similar libraries

Based on the "UI" category.
Alternatively, view SwiftyDrop alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of SwiftyDrop or a related project?

Add another 'UI' Library

README

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](misc/Default.png) [Success](misc/Success.png) [Warning](misc/Warning.png) [Error](misc/Error.png)

Blurs

[Light](misc/Light.png) [Dark](misc/Dark.png)

iPhone X

[iPhoneX](misc/iPhoneX.png)

iPad

[iPad](misc/iPadPortlait.png)

Demo

Git clone or download this repository and open SwiftyDrop.xcodeproj . You can try SwiftyDrop in your Mac or iPhone.

Runtime Requirements

  • iOS8.0 or later
  • Xcode 9.0
  • Swift 4.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 SwiftyDrop into your Xcode project using CocoaPods, specify it in your Podfile and run pod install.

platform :ios, '8.0'
use_frameworks!
pod 'SwiftyDrop', '~>4.0'

Installing with Carthage

Just add to your Cartfile:

github "morizotter/SwiftyDrop" ~> 4.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

SwiftyDrop has states of display.

Examples

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

Custom states

You can customize looks by comforming DropStatable protocol. Examples are:

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

Duration

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

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

Action

Drop.down("Message") {
    print("Action fired!")
}

Contribution

Please file issues or submit pull requests! We're waiting! :)

License

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


*Note that all licence references and agreements mentioned in the SwiftyDrop README section above are relevant to that project's source code only.