Submit Search
Upload
Parallactic Collection Views
•
9 likes
•
5,629 views
René Cacheaux
Follow
360iDev session on adding parallax effect to UICollectionView layouts.
Read less
Read more
Technology
Design
Report
Share
Report
Share
1 of 124
Download now
Download to read offline
Recommended
Modular View Controller Hierarchies
Modular View Controller Hierarchies
René Cacheaux
Bringing Swift into your Objective-C Projects
Bringing Swift into your Objective-C Projects
René Cacheaux
Writing Code for Humans, not Computers
Writing Code for Humans, not Computers
René Cacheaux
How native is React Native? | React Native vs Native App Development
How native is React Native? | React Native vs Native App Development
Devathon
Putting the Native in React Native - React Native Boston
Putting the Native in React Native - React Native Boston
stan229
React Native - Unleash the power of React in your device - Eduard Tomàs - Cod...
React Native - Unleash the power of React in your device - Eduard Tomàs - Cod...
Codemotion
An iOS Developer's Perspective on React Native
An iOS Developer's Perspective on React Native
Aleksandras Smirnovas
Optimizing React Native views for pre-animation
Optimizing React Native views for pre-animation
ModusJesus
Recommended
Modular View Controller Hierarchies
Modular View Controller Hierarchies
René Cacheaux
Bringing Swift into your Objective-C Projects
Bringing Swift into your Objective-C Projects
René Cacheaux
Writing Code for Humans, not Computers
Writing Code for Humans, not Computers
René Cacheaux
How native is React Native? | React Native vs Native App Development
How native is React Native? | React Native vs Native App Development
Devathon
Putting the Native in React Native - React Native Boston
Putting the Native in React Native - React Native Boston
stan229
React Native - Unleash the power of React in your device - Eduard Tomàs - Cod...
React Native - Unleash the power of React in your device - Eduard Tomàs - Cod...
Codemotion
An iOS Developer's Perspective on React Native
An iOS Developer's Perspective on React Native
Aleksandras Smirnovas
Optimizing React Native views for pre-animation
Optimizing React Native views for pre-animation
ModusJesus
Intro to react native
Intro to react native
ModusJesus
Android programming-basics
Android programming-basics
Aravindharamanan S
React Native for ReactJS Devs
React Native for ReactJS Devs
Barak Cohen
I Love APIs - Oct 2015
I Love APIs - Oct 2015
Mike McNeil
Introduction to React Native & Rendering Charts / Graphs
Introduction to React Native & Rendering Charts / Graphs
Rahat Khanna a.k.a mAppMechanic
AHOY FB Hack Day 2017
AHOY FB Hack Day 2017
Ian Yu-Hsun Lin
Lecture 12: React-Native Firebase Authentication
Lecture 12: React-Native Firebase Authentication
Kobkrit Viriyayudhakorn
Titanium Appcelerator - Beginners
Titanium Appcelerator - Beginners
Ambarish Hazarnis
React Native in a nutshell
React Native in a nutshell
Brainhub
Appcelerator Titanium Intro
Appcelerator Titanium Intro
Nicholas Jansma
Experiences building apps with React Native @UtrechtJS May 2016
Experiences building apps with React Native @UtrechtJS May 2016
Adrian Philipp
iOS Coding Best Practices
iOS Coding Best Practices
Jean-Luc David
A Better Interface Builder Experience
A Better Interface Builder Experience
Justin Munger
Introduction to React Native
Introduction to React Native
Sambhu Lakshmanan
Introduction to react native
Introduction to react native
Dani Akash
Getting started with Appcelerator Titanium
Getting started with Appcelerator Titanium
Techday7
Angular
Angular
TejinderMakkar
IBDesignable & IBInspectible
IBDesignable & IBInspectible
Gagan Vishal Mishra
Swift
Swift
Larry Ball
iPhone University Developer Program
iPhone University Developer Program
Jussi Pohjolainen
Making an app like 'Clear' Accessible
Making an app like 'Clear' Accessible
Sally Shepard
Augmented realityandeducaiotn2
Augmented realityandeducaiotn2
Amin Meyghani
More Related Content
What's hot
Intro to react native
Intro to react native
ModusJesus
Android programming-basics
Android programming-basics
Aravindharamanan S
React Native for ReactJS Devs
React Native for ReactJS Devs
Barak Cohen
I Love APIs - Oct 2015
I Love APIs - Oct 2015
Mike McNeil
Introduction to React Native & Rendering Charts / Graphs
Introduction to React Native & Rendering Charts / Graphs
Rahat Khanna a.k.a mAppMechanic
AHOY FB Hack Day 2017
AHOY FB Hack Day 2017
Ian Yu-Hsun Lin
Lecture 12: React-Native Firebase Authentication
Lecture 12: React-Native Firebase Authentication
Kobkrit Viriyayudhakorn
Titanium Appcelerator - Beginners
Titanium Appcelerator - Beginners
Ambarish Hazarnis
React Native in a nutshell
React Native in a nutshell
Brainhub
Appcelerator Titanium Intro
Appcelerator Titanium Intro
Nicholas Jansma
Experiences building apps with React Native @UtrechtJS May 2016
Experiences building apps with React Native @UtrechtJS May 2016
Adrian Philipp
iOS Coding Best Practices
iOS Coding Best Practices
Jean-Luc David
A Better Interface Builder Experience
A Better Interface Builder Experience
Justin Munger
Introduction to React Native
Introduction to React Native
Sambhu Lakshmanan
Introduction to react native
Introduction to react native
Dani Akash
Getting started with Appcelerator Titanium
Getting started with Appcelerator Titanium
Techday7
Angular
Angular
TejinderMakkar
IBDesignable & IBInspectible
IBDesignable & IBInspectible
Gagan Vishal Mishra
Swift
Swift
Larry Ball
iPhone University Developer Program
iPhone University Developer Program
Jussi Pohjolainen
What's hot
(20)
Intro to react native
Intro to react native
Android programming-basics
Android programming-basics
React Native for ReactJS Devs
React Native for ReactJS Devs
I Love APIs - Oct 2015
I Love APIs - Oct 2015
Introduction to React Native & Rendering Charts / Graphs
Introduction to React Native & Rendering Charts / Graphs
AHOY FB Hack Day 2017
AHOY FB Hack Day 2017
Lecture 12: React-Native Firebase Authentication
Lecture 12: React-Native Firebase Authentication
Titanium Appcelerator - Beginners
Titanium Appcelerator - Beginners
React Native in a nutshell
React Native in a nutshell
Appcelerator Titanium Intro
Appcelerator Titanium Intro
Experiences building apps with React Native @UtrechtJS May 2016
Experiences building apps with React Native @UtrechtJS May 2016
iOS Coding Best Practices
iOS Coding Best Practices
A Better Interface Builder Experience
A Better Interface Builder Experience
Introduction to React Native
Introduction to React Native
Introduction to react native
Introduction to react native
Getting started with Appcelerator Titanium
Getting started with Appcelerator Titanium
Angular
Angular
IBDesignable & IBInspectible
IBDesignable & IBInspectible
Swift
Swift
iPhone University Developer Program
iPhone University Developer Program
Similar to Parallactic Collection Views
Making an app like 'Clear' Accessible
Making an app like 'Clear' Accessible
Sally Shepard
Augmented realityandeducaiotn2
Augmented realityandeducaiotn2
Amin Meyghani
iOS 7 Intro: Engineering and Design
iOS 7 Intro: Engineering and Design
Sperasoft
Hello world ios v1
Hello world ios v1
Teodoro Alonso
Christopher Allen's Presentation at eComm 2009
Christopher Allen's Presentation at eComm 2009
eCommConf
iOS 7
iOS 7
PiXeL16
iOS Developer Interview Questions
iOS Developer Interview Questions
Clark Davidson
Casestudy
Casestudy
Vera Kovaleva
iOSMumbai Meetup Keynote
iOSMumbai Meetup Keynote
Glimpse Analytics
Comparison between articulate storyline & adobe captivate
Comparison between articulate storyline & adobe captivate
Manish Jhurani
Beginning Real World iOS App Development
Beginning Real World iOS App Development
Andri Yadi
iOS App Development with Storyboard
iOS App Development with Storyboard
Babul Mirdha
"Universal programming recipes", Kateryna Trofimenko
"Universal programming recipes", Kateryna Trofimenko
Badoo Development
Universal programming recipes - Ekaterina Trofimenko - Women In Technology
Universal programming recipes - Ekaterina Trofimenko - Women In Technology
Badoo
Ux Example
Ux Example
Johnson Wang
New to native? Getting Started With iOS Development
New to native? Getting Started With iOS Development
Geoffrey Goetz
iOS 7 Transition guide
iOS 7 Transition guide
Jigar Maheshwari
Building native apps with web components
Building native apps with web components
Denis Radin
React Alicante - React Redux a development workflow
React Alicante - React Redux a development workflow
Braulio Diez Botella
10 Essential Widgets Every Flutter Developer Should Know.pdf
10 Essential Widgets Every Flutter Developer Should Know.pdf
BitCot
Similar to Parallactic Collection Views
(20)
Making an app like 'Clear' Accessible
Making an app like 'Clear' Accessible
Augmented realityandeducaiotn2
Augmented realityandeducaiotn2
iOS 7 Intro: Engineering and Design
iOS 7 Intro: Engineering and Design
Hello world ios v1
Hello world ios v1
Christopher Allen's Presentation at eComm 2009
Christopher Allen's Presentation at eComm 2009
iOS 7
iOS 7
iOS Developer Interview Questions
iOS Developer Interview Questions
Casestudy
Casestudy
iOSMumbai Meetup Keynote
iOSMumbai Meetup Keynote
Comparison between articulate storyline & adobe captivate
Comparison between articulate storyline & adobe captivate
Beginning Real World iOS App Development
Beginning Real World iOS App Development
iOS App Development with Storyboard
iOS App Development with Storyboard
"Universal programming recipes", Kateryna Trofimenko
"Universal programming recipes", Kateryna Trofimenko
Universal programming recipes - Ekaterina Trofimenko - Women In Technology
Universal programming recipes - Ekaterina Trofimenko - Women In Technology
Ux Example
Ux Example
New to native? Getting Started With iOS Development
New to native? Getting Started With iOS Development
iOS 7 Transition guide
iOS 7 Transition guide
Building native apps with web components
Building native apps with web components
React Alicante - React Redux a development workflow
React Alicante - React Redux a development workflow
10 Essential Widgets Every Flutter Developer Should Know.pdf
10 Essential Widgets Every Flutter Developer Should Know.pdf
Recently uploaded
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
Manik S Magar
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
UiPathCommunity
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
Fwdays
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
Slibray Presentation
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
Alex Barbosa Coqueiro
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Mark Simos
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
Lonnie McRorey
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
charlottematthew16
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
gvaughan
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
Fwdays
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
Stephanie Beckett
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
Mark Billinghurst
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
Dubai Multi Commodity Centre
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
Fwdays
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
Dilum Bandara
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
Mattias Andersson
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
Addepto
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
Sri Ambati
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
Curtis Poe
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Precisely
Recently uploaded
(20)
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Parallactic Collection Views
1.
2.
Parallactic CollectionViews How to add
depth into iOS user interfaces
3.
4.
UI Collection View UICollectionViewDataSource UICollectionViewCell UICollectionViewCell UICollectionViewCell UICollectionViewCell UICollectionReusableView UICollectionViewLayout UICollectionReusableView UICollectionReusableView UICollectionReusableView UICollectionView UICollectionViewDelegate
5.
TrulyGreat Apps
6.
What makes an app truly
great?
7.
Fitin
8.
Magical
9.
Amazing First Impressions
10.
Experience Matters
11.
Let’sgobackintime
12.
13.
14.
AP
15.
Horizontal Navigation
16.
And now...
17.
iOS 7 is
Coming
18.
19.
Opportunity
20.
Design for iOS
7
21.
Depth
22.
Navigation
23.
Tools We Need
24.
UICollectionView
25.
26.
UICollectionView iOS 7
27.
How to add
depth?
28.
parallax
29.
Examples
30.
http://tinyurl.com/ 360Parallax
31.
Not just cool...
32.
How Parallax Works
33.
Relative Motion
34.
You can do
this with UICollection View
35.
WhyCollectionView?
36.
In this session
you will:
37.
Master Adding Parallax to
Your Layouts
38.
Let’s Dive In
39.
What are we building?
40.
41.
The Background
42.
Background View1
43.
UI Collection View UICollectionViewDataSource UICollectionViewCell UICollectionViewCell UICollectionViewCell UICollectionViewCell UICollectionReusableView UICollectionViewLayout UICollectionReusableView UICollectionReusableView UICollectionReusableView UICollectionView UICollectionViewDelegate
44.
Calculating Layout Metrics
45.
Elements in Rect -
(NSArray *)layoutAttributesForElementsInRect:(CGRect)rect {
46.
Title1 Title2 Title3 Content Content Content Content Content RectElements in
Rect
47.
1 2 3 Calculate Test Add
48.
Layout Attributes - (UICollectionViewLayoutAttributes
*) layoutAttributesForDecorationViewOfKind:(NSString *)decorationViewKind atIndexPath:(NSIndexPath *)indexPath
49.
Anchor Background2
50.
UICollectionView UIScrollView UIView UIResponder NSObject Class Hierarchy
51.
Scroll View Mechanics
52.
Scroll View Mechanics Scroll View
Contents BOUNDS
53.
Scroll View Mechanics Scroll View
Contents BOUNDS
54.
Anchor
55.
Anchoring Subviews Scroll View Contents Subview BOUNDS
56.
Anchoring Subviews Scroll View Contents Subview BOUNDS
57.
Need New Layout Metrics
on Scroll
58.
Invalidate Layout - (BOOL)shouldInvalidateLayoutForBoundsChange:(CGRect)newBounds
{
59.
Invalidate Layout Scroll View Contents Subview BOUNDS -invalidateLayout -invalidateLayout -invalidateLayout -invalidateLayout -invalidateLayout
60.
New Metrics On Invalidation
61.
Layout Attributes - (UICollectionViewLayoutAttributes
*) layoutAttributesForDecorationViewOfKind:(NSString *)decorationViewKind atIndexPath:(NSIndexPath *)indexPath
62.
Parallax3
63.
It’sabouttoget complicated
64.
Layout Attributes - (UICollectionViewLayoutAttributes
*) layoutAttributesForDecorationViewOfKind:(NSString *)decorationViewKind atIndexPath:(NSIndexPath *)indexPath
65.
Parallactic Offset
66.
Percentage Based
67.
Content Offset Scroll View Contents BOUNDS 0% 100% 50%
68.
Content Offset Scroll View Contents BOUNDS 0% 100% 50%
69.
Content Offset Scroll View Contents BOUNDS 100% Bounds
Height
70.
Content Offset Scroll View Contents BOUNDS 100% Content
Size Height
71.
Content Offset Scroll View Contents BOUNDS 100% Distance
to Travel
72.
Percentage CGFloat percentageComplete = self.collectionView.contentOffset.y
/ (self.collectionView.contentSize.height - self.collectionView.bounds.size.height);
73.
Calculating Parallactic Offset
74.
Define Offset Parallaxing Background BOUNDS Offset 0%
75.
Define Offset Parallaxing Background BOUNDS Offset 50%
76.
Define Offset Parallaxing Background BOUNDS Offset 100%
77.
Offset CGFloat parallaxShift =
6.0; CGFloat offset = ([self scrollPercentageComplete] * (2 * parallaxShift)) - parallaxShift;
78.
1 2 3 Inspect Collection View
Content Offset Calculate Current Percentage Calculate Current Parallactic Offset 4 Apply the Parallax Frame
79.
BuildIt
80.
We’ve Got Parallax
81.
The Cells
82.
Similar
83.
BuildIt
84.
YOU Now can Parallax
85.
One more thing...
86.
Parallactic rainForest
87.
Inspiration
88.
www.spotify.com/us/
89.
Demo
90.
ARCHITECTURE
91.
Parallaxing Cell Banner Parallaxing Cell Banner Components
92.
Anchor
93.
Cell Scroll View Contents Cell
2Cell Banner Banner Banner Banner
94.
Scroll View Contents Banner CellCell
2CellBanner Banner Banner
95.
Scroll View Contents Banner CellCell
2Cell Banner Banner Banner
96.
Scroll View Contents Banner CellCell
2Cell Banner Banner Banner
97.
Scroll View Contents Banner CellCell
2Cell Banner Banner Banner
98.
Crop
99.
Scroll View Contents Cell Banner Banner Banner Banner
100.
Scroll View Contents Cell Banner Banner Banner Banner
101.
Scroll View Contents Cell
2Cell Banner Banner Banner Banner
102.
Cell 2 Scroll View
Contents Cell Banner Banner Banner Banner
103.
Scroll View Contents Cell
2 Cell Banner Banner Banner Banner
104.
Scroll View Contents Cell
2 Banner Banner Banner Banner
105.
Scroll View Contents Cell
3Cell 2 Banner Banner Banner Banner
106.
Scroll View Contents Cell
3 Cell 2 Banner Banner Banner Banner
107.
Scroll View Contents Cell
3 Cell 2 Banner Banner Banner Banner
108.
Scroll View Contents Cell
3 Banner Banner Banner Banner
109.
Parallax
110.
Define Offset Scroll View Contents Banner Banner Parallaxing
Cell Banner Banner BOUNDS
111.
Define Offset Parallaxing Cell BOUNDS
112.
Define Offset Parallaxing Cell BOUNDS Offset 0%
113.
Define Offset Parallaxing Cell BOUNDS Offset 50%
114.
Define Offset Parallaxing Cell BOUNDS Offset 100%
115.
So that’s parallax
116.
Why do this?
117.
Fit In
118.
Get Featured by Apple
119.
And...
120.
delightyourusers
121.
Resources
122.
/RCacheaux/Parallax
123.
René Cacheaux iOS Architect rene.cacheaux@mutualmobile.com rene.cacheaux@gmail.com @RCachATX
Download now