Latest 5.0.2
Homepage https://github.com/Workiva/w-mobile-kit
License Apache
Platforms ios 9.0, requires ARC
Dependencies SnapKit, CryptoSwift, SDWebImage, Material
Authors , , , , ,

Version
License
Platform

WMobileKit is a Swift library containing various custom UI components to provide functionality outside of the default libraries. Each component is customizable and featured in a sample app to demonstrate its functinality!

Index

Features

Controls

Component Demo
WRadio
Web-like radio button that can be tied to a group and automatically select/deselect as expected from a normal radio button. The size and color of the outer and inner circle can be changed as well as the highlight.
WSwitch
Custom switch control emulating Apple’s custom switches. Adds the ability to change sizes, colors, and sliding behaviors.

Information Views

Component Demo
WBadge
Custom number badge that provides the ability to change color, spacing, shape, location, and how the number displays/expands.
WSpinner
Custom progress spinner allowing for custom colors, the addition of images.
WUserLogoView
An image used to represent a user. Can use either a name which is hashed into a color or and image that is cropped to fit the view.
WAutoLayoutView
View that automatically adds as many of the provided views as possible to each row as determined by the controller’s width and wraps to the next row for any remaining views while adjusting the height to fit the content.

Modal Components

Component Demo
WActionSheet
Custom action sheets providing the ability to include a picker view, automatically scale to content, scroll, include a cancel button, and tap to dismiss.
WBanner
Static banners that display information over content from the top or bottom. Can be automatically dismissed or on tap.
WLoadingModal
Displays a loading view over content. Can dim the background view and will disappear after a set period of time.
WToast
Toast that displays from the top/bottom or sides and can be customized to dismiss on tap or via a timer. The color, text, and transparency can be customized.

Navigation

Component Demo
WPagingSelectorControl
Custom paging control that allows scrolling headers, automatically spaced headers and button actions to display a view controller.
WPagingSelectorVC
View controller leveraging the WPagingSelectorControl.
WSideMenuVC
Custom side menu drawer. Displays view controllers as cells that can be tapped to swap the main view.

Text Inputs

Component Demo
WAutoCompleteTextView
Text view that provides suggestions as you type.
WMarkdownTextView
Text view that interprets and displays markdown text.
WTextField
UITextField with expanded functionality.
WTextView
UITextView with expanded functionality.

Miscellaneous/Utilities

Component Description
WSizeVC Base view controller that responds to and sends size change related events. Supports iPad Pro/Air split views.
WTheme Component that allows for simple theme creation that can be used throughout an app.
WUtils Random useful methods.

Usage

To use the library in your app, add the following import to your file:

import WMobileKit

To run the example project, run ./setup.sh in the root directory.
Alternatively, you can run pod install from the Example directory.

Requirements

  • use_frameworks! must be at the top of your Podfile (since this is a Swift pod)
  • iOS 8.0+
  • Xcode 6.0

Installation

Add the following to your Podfile:

pod "WMobileKit"

Sample App Setup

Run the following in the root directory

./setup.sh

Known Issues

use_frameworks missing

Error:

[!] Pods written in Swift can only be integrated as frameworks; this feature is still in beta. Add `use_frameworks!` to your Podfile or target to opt into using it. The Swift Pod being used is: WMobileKit
    Warning: Command failed:  Use --force to continue.

Solution:

  • Add use_frameworks to the top of your Podfile

License

WMobileKit is available under the Apache license. See the LICENSE file for more info.

Authors

  • James Romo
  • Jordan Ross
  • Jeff Scaturro
  • Todd Tarbox
  • Brian Blanchard
  • Bryan Rezende

Latest podspec

{
    "name": "WMobileKit",
    "version": "5.0.2",
    "summary": "Swift library containing various custom UI components to provide functionality outside of the default libraries.",
    "license": {
        "type": "Apache",
        "file": "LICENSE"
    },
    "homepage": "https://github.com/Workiva/w-mobile-kit",
    "authors": {
        "James Romo": "[email protected]",
        "Jordan Ross": "[email protected]",
        "Jeff Scaturro": "[email protected]",
        "Todd Tarbox": "[email protected]",
        "Brian Blanchard": "[email protected]",
        "Bryan Rezende": "[email protected]"
    },
    "source": {
        "git": "https://github.com/Workiva/w-mobile-kit.git",
        "tag": "5.0.2"
    },
    "platforms": {
        "ios": "9.0"
    },
    "requires_arc": true,
    "source_files": "Source/*{h,m,swift}",
    "dependencies": {
        "SnapKit": [
            "3.2.0"
        ],
        "CryptoSwift": [
            "0.6.3"
        ],
        "SDWebImage": [
            "4.0.0"
        ],
        "Material": [
            "2.6.3"
        ]
    },
    "pushed_with_swift_version": "3"
}

Pin It on Pinterest

Share This