Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/andresbrun/ABCustomUINavigationController

Custom UINavigationController. SquaresFlips and Cube effects
https://github.com/andresbrun/ABCustomUINavigationController

Last synced: about 1 month ago
JSON representation

Custom UINavigationController. SquaresFlips and Cube effects

Awesome Lists containing this project

README

        

ABCustomUINavigationController
=====================
[![License MIT](https://go-shields.herokuapp.com/license-MIT-blue.png)](https://github.com/andresbrun/ABCustomUINavigationController/blob/master/LICENSE)
[![Build Platform](https://cocoapod-badges.herokuapp.com/p/ABCustomUINavigationController/badge.png)](https://github.com/andresbrun/ABCustomUINavigationController)
[![Build Version](https://cocoapod-badges.herokuapp.com/v/ABCustomUINavigationController/badge.png)](https://github.com/andresbrun/ABCustomUINavigationController)
[![Build Status](https://travis-ci.org/andresbrun/ABCustomUINavigationController.png?branch=origin)](https://github.com/andresbrun/ABCustomUINavigationController)

Subclass of UINavigationController for overwriting push and pop methods to create new transitions effects. Currently it has been implemented two transition animations:

### SquaresFlip
The screen is split into squares and each one rotates until showing the new controller. It has two animation variations:
- Randomly
- Horizontally

### Pixelate
The screen is split into pixels and each one fadeout displaying next view. It has two animation variations:
- Randomly
- Horizontally

### Cube effect
The views are showns in differents cube's faces. It has two animation variation:
- Horizontal
- vertical

## Installation with CocoaPods

[CocoaPods](http://cocoapods.org) is a dependency manager for Objective-C, which automates and simplifies the process of using 3rd-party libraries like ABCustomUINavigationController in your projects.

#### Podfile

```ruby
use_frameworks!
pod "ABCustomUINavigationController"
```

## Use
For using that component you only have to copy the SquaresFlipNavigation folder into your project and create the navigation controller as:

```objective-c
#import "FlipSquaresNavigationController.h"
[[FlipSquaresNavigationController alloc] initWithRootViewController:self.viewController];
```

```swift
import ABCustomUINavigationController
let navigationController = FlipSquaresNavigationController(rootViewController: viewController)
```

or

```objective-c
#import "CubeNavigationController.h"
[[CubeNavigationController alloc] initWithRootViewController:self.viewController];
```

```swift
import ABCustomUINavigationController
let navigationController = CubeNavigationController(rootViewController: viewController)
```

and pushing and pop as usual using commons methods like:

```objective-c
- (void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated
- (UIViewController *)popViewControllerAnimated:(BOOL)animated
- (NSArray *)popToRootViewControllerAnimated:(BOOL)animated
- (NSArray *)popToViewController:(UIViewController *)viewController animated:(BOOL)animated
```

## Features
- Supports every screen size. iPhone and iPad.
- Supports rotation.
- Support status bar, navigation bar and navigation toolbar.

## Examples

### SquaresFlip
![alt tag](https://raw.githubusercontent.com/andresbrun/ABCustomUINavigationController/master/example_images/example.gif)
### Cube
![alt tag](https://raw.githubusercontent.com/andresbrun/ABCustomUINavigationController/master/example_images/example_cube.gif)