Rightpoint / RZUtils

Rightpoint Commonly Used Tools
Other
123 stars 22 forks source link

RZUtils

Version CircleCI License Platform

A collection of helpful utilities and components for iOS development.

Installation

CocoaPods

The podspec for RZUtils is fully segmented into subspecs by directory (effectively one subspec per individual category type or component). See below for examples.

All of RZUtils

pod 'RZUtils'

All Categories

pod 'RZUtils/Categories'

All Components

pod 'RZUtils/Components'

All Utilities or Test Utilities

pod 'RZUtils/Utilities'
pod 'RZUtils/TestUtilities'

Specific Classes

To import only a specific category, component, or utility, the subspec should mirror the directory structure. For example:

pod 'RZUtils/Categories/NSString'
pod 'RZUtils/Categories/KVO'
pod 'RZUtils/Components/RZProgressView'

Manual Installation

Simply copy the relevant file into your project. If the files import any frameworks, link against those frameworks.

Categories Overview

CoreAnimation

KVO

NSDate

NSDictionary

NSString

NSUndoManager

UIAlertView

UIColor

UIFont

UIImage

UITableViewCell

UIView

UIViewController

Components Overview

RZAnimatedCountingLabel

UILabel subclass that animates its text from one value to another with an optional custom formatting block.

RZAbout

A set of utilities for presenting various "About" elements such as the "Built by RZ" logo and feedback.

RZAnimatedImageView

Replacement for UIImageView-based animated .png sequences that calls a completion block when the animation is finished. Believe it or not, there is no way to do this otherwise.

RZButtonView

UIControl subclass that acts like a UIButton but allows the addition and layout of arbitrary subviews.

RZCollectionTableView

Is it a Collection View or a Table View? The world may never know... (Spoiler: It's a Collection View)

RZCollectionTableView is a collection view layout and accompanying collection view and collection view cell subclasses that mimic the class/delegate interface, look, and feel of UITableView, with a few added enhancements such as customizable section insets, row spacings, and more.

RZCollectionViewAnimationAssistant

Utility for making collection view item insertion/deletion animations easier.

RZDelayedOperation

Basic concurrent NSOperation class that takes a block and executes it after a given time interval. Can be cancelled or reset.

RZLocationService

CoreLocation made easy.

RZProgressView

UIProgressView is a little broken in iOS 7.0 (weird glitches when animating and resizing), and very broken in iOS 7.1 (can't set custom images; radar here). RZProgressView is a drop-in replacement that fixes these problems.

RZRevealViewController

A basement/reveal menu component.

RZSegmentedViewController

UIViewController container that uses a segment control to switch between an array of UIViewControllers

RZSingleChildContainerViewController

A UIViewController subclass for managing a single child view controller contained in any subview container of a parent. Useful for keeping one view static while another view contains one of many potential child view controllers. iOS7+ only.

RZSplitViewController

Extends the functionality of UISplitViewController including allowing it to be presented Modally.

RZTelprompt

Makes NSURLRequest phone calls that use telprompt by making a tel request to a static UIWebView, which in turn privately calls telprompt. This gives you the benifits of using telprompt without calling it from UIApplication where it is not specifically supported by Apple.

RZViewFactory

Extensions to UIView for easily loading a subclass from a XIB file.

RZWebviewController

UIViewController that manages a web view, with associated chrome.

Utilities Overview

RZCommonUtils

Useful macros, mathematical functions, and more.

RZDispatch

Useful extensions for working with GCD/libdispatch.

RZLogHelper

A header with debug log macros that extend NSLog, including verbosity levels.

Test Utilities Overview

All utilities within this directory are intended for use in test code ONLY.

RZWaiter

A utility for aiding in testing asynchronous operations.

License

RZUtils is distributed under an MIT License. See the LICENSE file for more details.

Contributing

Contributions and pull requests are welcome. Please adhere to the following guidelines: