Meet Page View Controller for iOS by Cleveroad

Overview

CRPageViewController Awesome

CI Status Version License Platform

Header image

Meet Page View Controller for iOS by Cleveroad

Hey, guys! Cleveroad team has got something really interesting for you. Meet our new iOS library - CRPageViewController. We’re sure that you’ve already checked the convenience of Page View long time ago. But we’ve made something that will make navigation between pages of your app even handier.

Demo image

While a standard page view allows you to navigate between pages by using simple gestures, our component goes further. CRPageViewController allows defining a page size by setting width and heights manually. Thus, users will be able to control the placement of pages on the screens in the way which is more suitable for them.

We’re convinced that users will find this component really useful and will be grateful for such a good tool.

Awesome

Requirements

  • iOS 8 or higher

Example

To run the example project, clone the repo, and run pod install from the Example directory first.

Installation

CRPageViewController is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod "CRPageViewController"

and run pod install in terminal.

Usage

@protocol CRPageViewControllerDataSource 
@required

//Returns the view controller after the given view controller.
- (UIViewController *)pageViewController:(CRPageViewController *)pageViewController
viewControllerAfterViewController:(UIViewController *)viewController;

//Returns the view controller before the given view controller.
- (UIViewController *)pageViewController:(CRPageViewController *)pageViewController
viewControllerBeforeViewController:(UIViewController *)viewController;

@optional

//ViewController moving to center PageController
- (void)focusedViewController:(UIViewController *)viewController;

//ViewController moving from center PageController
- (void)unfocusedViewController:(UIViewController *)viewController;

CRPageViewController

//DataSourse of PageViewController
@property (weak, nonatomic) id  dataSource;

//Starting array of UIViewController in PageViewController
@property (strong, nonatomic) NSArray  *viewControllers;

//Size of UIViewController in PageViewController
@property (assign, nonatomic) CGSize childVCSize;

//Vertical offset of UIViewController in center screen
@property (assign, nonatomic) CGFloat OffsetOfHeightCentralVC;

//Distance between child UIViewController
@property (assign, nonatomic) CGFloat sizeBetweenVC;

//Speed of animation change UIViewController on center PageViewController
@property (assign, nonatomic) CGFloat animationSpeed;

//Type of animation change UIViewController on center PageViewController
@property (assign, nonatomic) UIViewAnimationCurve animation;

//Count of UIViewController on PageViewController
@property (assign, nonatomic) NSInteger countPageInController;

Example

To run the example project, clone the repo, and run pod install from the Example directory first.

Support

If you have any questions, issues or propositions, please create a new issue in this repository.

If you want to hire us, send an email to [email protected] or fill the form on contact page

Follow us:

Awesome Awesome Awesome Awesome Awesome

License

The MIT License (MIT)

Copyright (c) 2016 Cleveroad Inc.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

You might also like...
A set of UIKit helpers that simplify the usage of UIKit view's and controller's in SwiftUI.

A set of UIKit helpers that simplify the usage of UIKit view's and controller's in SwiftUI. Many of these helpers are useful even in a pure UIKit project.

ElongationPreview is an elegant UI push-pop style view controller
ElongationPreview is an elegant UI push-pop style view controller

ElongationPreview is an elegant UI push-pop style view controller

Pull up controller with multiple sticky points like in iOS Maps
Pull up controller with multiple sticky points like in iOS Maps

PullUpController Create your own pull up controller with multiple sticky points like in iOS Maps Features Multiple sticky points Landscape support Scr

AGCircularPicker is helpful component for creating a controller aimed to manage any calculated parameter
AGCircularPicker is helpful component for creating a controller aimed to manage any calculated parameter

We are pleased to offer you our new free lightweight plugin named AGCircularPicker. AGCircularPicker is helpful for creating a controller aimed to man

Highly customizable Action Sheet Controller with Assets Preview written in Swift
Highly customizable Action Sheet Controller with Assets Preview written in Swift

PPAssetsActionController Play with me ▶️ 🖐 If you want to play with me, just tap here and enjoy! 🎩 🕴 Show me 🎪 Try me 📲 The easiest way to try me

Reel Search is a Swift UI controller that allows you to choose options from a list
Reel Search is a Swift UI controller that allows you to choose options from a list

REEL SEARCH Reel Search is a Swift UI controller that allows you to choose options from a list We specialize in the designing and coding of custom UI

A SwiftUI bottom-up controller, like in the Maps app. Drag to expand or minimize.
A SwiftUI bottom-up controller, like in the Maps app. Drag to expand or minimize.

SwiftUI Drawer A SwiftUI bottom-up controller, like in the Maps app. Drag to expand or minimize. Contents Add the Package Basic Usage Examples Credits

Infinite paging controller, scrolling through contents and title bar scrolls with a delay
Infinite paging controller, scrolling through contents and title bar scrolls with a delay

PageController PageController is infinite paging controller, scrolling through contents and title bar scrolls with a delay. Then it provide user inter

A way to quickly add a notification badge icon to any view. Make any view of a full-fledged animated notification center.
A way to quickly add a notification badge icon to any view. Make any view of a full-fledged animated notification center.

BadgeHub A way to quickly add a notification badge icon to any view. Demo/Example For demo: $ pod try BadgeHub To run the example project, clone the r

Owner
Cleveroad
Professional web and mobile development company. Full-cycle IT development!
Cleveroad
📖 A simple, highly informative page view controller

TL;DR UIPageViewController done properly. ⭐️ Features Simplified data source management & enhanced delegation. Dynamically insert & remove pages. Infi

UI At Six 1.8k Dec 24, 2022
A controller that uses a UIStackView and view controller composition to display content in a list

StackViewController Overview StackViewController is a Swift framework that simplifies the process of building forms and other static content using UIS

Seed 867 Dec 27, 2022
Flutter Apple Product Store App UI Home Page With Getx

Flutter Apple Product Store App UI Home Page With Getx A new Flutter UI Project on my Youtube Channel . About The Project Create a beautiful Flutter U

Muawia Saeed 11 Dec 23, 2022
A page control similar to that used in Instagram

ISPageControl ISPageControl has a page control similar to that used in the Instagram Contents Requirements Installation Usage Communication Credits Li

Interactive 291 Dec 5, 2022
EdvoraUI - The UI for the login page for Edvora made in SwiftUI

About This is the UI for the login page for Edvora made in SwiftUI. Screenshot L

Noman Ahmad 0 Jan 11, 2022
iOS custom controller used in Jobandtalent app to present new view controllers as cards

CardStackController iOS custom controller used in the Jobandtalent app to present new view controllers as cards. This controller behaves very similar

jobandtalent 527 Dec 15, 2022
Provides an iOS view controller allowing a user to draw their signature with their finger in a realistic style.

Swift version now available! Mimicking pen-on-paper signatures with a touch screen presents a difficult set of challenges. The rate touch events are e

Uber Open Source 1.3k Jan 6, 2023
A child view controller framework that makes setting up your parent controllers as easy as pie.

Description Family is a child view controller framework that makes setting up your parent controllers as easy as pie. With a simple yet powerful publi

Christoffer Winterkvist 246 Dec 28, 2022
A library, which adds the ability to hide navigation bar when view controller is pushed via hidesNavigationBarWhenPushed flag

HidesNavigationBarWhenPushed A library, which adds the ability to hide navigation bar when view controller is pushed via hidesNavigationBarWhenPushed

Danil Gontovnik 55 Oct 19, 2022