Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
Programming iOS 7
Preface
Versions
Acknowledgments
From the Programming iOS 4 Preface
Conventions Used in This Book
Using Code Examples
Safari® Books Online
How to Contact Us
I. Views
1. Views
The Window
Experimenting With Views
Subview and Superview
Visibility and Opacity
Frame
Bounds and Center
Transform
Layout
Autoresizing
Autolayout
Constraints
Autoresizing constraints
Creating constraints in code
Visual format
Mistakes with constraints
Intrinsic content size
Constraints in the Nib
Creating a constraint
Viewing and editing constraints
Problems with constraints
Order of Layout Events
Autolayout and View Transforms
2. Drawing
UIImage and UIImageView
Resizable Images
Image Rendering Mode
Graphics Contexts
UIImage Drawing
CGImage Drawing
Snapshots
CIFilter and CIImage
Drawing a UIView
Graphics Context Settings
Paths and Shapes
Clipping
Gradients
Colors and Patterns
Graphics Context Transforms
Shadows
Erasing
Points and Pixels
Content Mode
3. Layers
View and Layer
Layers and Sublayers
Manipulating the Layer Hierarchy
Positioning a Sublayer
CAScrollLayer
Layout of Sublayers
Drawing in a Layer
Content Resizing and Positioning
Layers that Draw Themselves
Transforms
Depth
Shadows, Borders, and Masks
Layer Efficiency
Layers and Key–Value Coding
4. Animation
Drawing, Animation, and Threading
UIImageView and UIImage Animation
View Animation
Block-Based View Animation
View Animation Options
Springing View Animation
Keyframe View Animation
Transitions
Implicit Layer Animation
Animation Transactions
Media Timing Functions
Core Animation
CABasicAnimation and Its Inheritance
Using a CABasicAnimation
Keyframe Animation
Making a Property Animatable
Grouped Animations
Transitions
Animations List
Actions
What an Action Is
Action Search
Hooking Into the Action Search
Nonproperty Actions
Emitter Layers
CIFilter Transitions
UIKit Dynamics
Motion Effects
Animation and Autolayout
5. Touches
Touch Events and Views
Receiving Touches
Restricting Touches
Interpreting Touches
Gesture Recognizers
Gesture Recognizer Classes
Gesture Recognizer Conflicts
Subclassing Gesture Recognizers
Gesture Recognizer Delegate
Gesture Recognizers in the Nib
Touch Delivery
Hit-Testing
Hit-testing for layers
Hit-testing for drawings
Hit-testing during animation
Initial Touch Event Delivery
Gesture Recognizer and View
Touch Exclusion Logic
Gesture Recognition Logic
Touches and the Responder Chain
II. Interface
6. View Controllers
View Controller Responsibilities
View Controller Hierarchy
View Controller Creation
How a View Controller Gets Its View
Manual View
Generic Automatic View
View in a Separate Nib
Nib-Instantiated View Controller
Storyboard-Instantiated View Controller
View Resizing and the Status Bar
Rotation
Rotation and Layout Events
Initial Orientation
Presented View Controller
Presenting a View
Communication With a Presented View Controller
Presented View Animation
Presentation Styles
Rotation of a Presented View
Presenting a View in Response to Rotation
Tab Bar Controllers
Tab Bar Items
Configuring a Tab Bar Controller
Navigation Controllers
Bar Button Items
Navigation Items and Toolbar Items
Configuring a Navigation Controller
Custom Transition Animations
Noninteractive Custom Transition Animation
Interactive Custom Transition Animation
Custom Presented View Controller Transition
Transition Coordinator
Page View Controller
Container View Controllers
Storyboards
Segues
Container Views
Unwind Segues
View Controller Lifetime Events
Incoherencies in View Controller Events
Appear and Disappear Events
Manual Event Forwarding to a Child View Controller
View Controller Memory Management
State Restoration
How to Test State Restoration
Participating in State Restoration
Restoration ID, Identifier Path, and Restoration Class
Restoring View Controller State
Restoration Order of Operations
Restoration of Other Objects
Snapshot Suppression
7. Scroll Views
Creating a Scroll View in Code
Using a Content View
Scroll View in a Nib
Scrolling
Paging
Tiling
Zooming
Zooming Programmatically
Zooming with Detail
Scroll View Delegate
Scroll View Touches
Floating Scroll View Subviews
Scroll View Performance
8. Table Views and Collection Views
Table View Cells
Built-In Cell Styles
Registering a Cell Class
Custom Cells
Overriding a cell’s subview layout
Adding subviews in code
Designing a cell in a nib
Designing a cell in a storyboard
Table View Data
The Three Big Questions
Reusing Cells
Table View Sections
Section Index
Refreshing Table View Data
Variable Row Heights
Table View Cell Selection
Managing Cell Selection
Responding to Cell Selection
Navigation From a Table View
Cell Choice and Static Tables
Table View Scrolling and Layout
Table View State Restoration
Table View Searching
Table View Editing
Deleting Table Items
Editable Content in Table Items
Inserting Table Items
Rearranging Table Items
Dynamic Table Items
Table View Menus
Collection Views
Collection View Classes
Using a Collection View
Custom Collection View Layouts
Switching Layouts
Collection Views and UIKit Dynamics
9. Popovers and Split Views
Preparing a Popover
Popover Size
Popover Appearance Customization
Summoning and Dismissing a Popover
Popover Segues
Managing a Popover Controller
Dismissing a Popover
Popovers During Rotation or Backgrounding
Popovers and Presented Views
Automatic Popovers
Split Views
Using a Split View
Split Views in a Storyboard
Other Split View Configurations
10. Text
Fonts
Fonts and Dynamic Type
Font Descriptors
Attributed Strings
Attributed String Attributes
Making an Attributed String
Tab stops
Text attachments
Modifying and Querying an Attributed String
Measuring and Drawing an Attributed String
Labels
Number of Lines
Wrapping and Truncation
Label Resizing
Customized Label Drawing
Text Fields
Summoning and Dismissing the Keyboard
Keyboard Covers Text Field
Sliding the interface
Text field in a scroll view
Configuring the Keyboard
Text Field Delegate and Control Event Messages
Text Field Menu
Text Views
Text View as Scroll View
Text View and Keyboard
Text Kit
Text Container
Alternative Text Kit Stack Architectures
Layout Manager
Text Kit Without a Text View
11. Web Views
Web View Content
Loading Web View Content
Designing Web View Content
Paginated Web Views
Web View State Restoration
Communicating with a Web View
12. Controls and Other Views
UIActivityIndicatorView
UIProgressView
UIPickerView
UISearchBar
UIControl
UISwitch
UIStepper
UIPageControl
UIDatePicker
UISlider
UISegmentedControl
UIButton
Custom Controls
Bars
Bar Position and Bar Metrics
Bar Appearance
UIBarButtonItem
UINavigationBar
UIToolbar
UITabBar
Tint Color
Appearance Proxy
13. Modal Dialogs
Alert View
Action Sheet
Dialog Alternatives
Local Notifications
Activity View
III. Some Frameworks
14. Audio
System Sounds
Audio Session
Interruptions
Routing Changes
Audio Player
Remote Control of Your Sound
Playing Sound in the Background
Further Topics in Sound
15. Video
MPMoviePlayerController
MPMoviePlayerViewController
UIVideoEditorController
Introduction to AV Foundation
Some AV Foundation Building Blocks
Displaying a Movie
Synchronizing Video With Animation
Building Media
Further Exploration of AV Foundation
16. Music Library
Exploring the Music Library
Querying the Music Library
Persistence and Change in the Music Library
Music Player
MPVolumeView
Playing Songs With AV Foundation
Music Picker
17. Photo Library and Image Capture
Choosing From the Photo Library
Assets Library Framework
Using the Camera
Customizing the Image Capture Interface
Image Capture With AV Foundation
18. Address Book
Address Book Database
Address Book Interface
ABPeoplePickerNavigationController
ABPersonViewController
ABNewPersonViewController
ABUnknownPersonViewController
19. Calendar
Calendar Database
Creating Calendars and Events
Recurrence
Fetching Events
Reminders
Proximity Alarms
Calendar Interface
EKEventViewController
EKEventEditViewController
EKCalendarChooser
20. Mail and Messages
Mail Message
Text Message
Twitter Post
21. Maps
Displaying a Map
Annotations
Custom Annotation View
Custom Annotation Class
Other Annotation Features
Overlays
Custom Overlay Class
Custom Overlay Renderer
Other Overlay Features
Map Kit and Current Location
Communicating With the Maps App
Geocoding, Searching, and Directions
Geocoding
Searching
Directions
22. Sensors
Core Location
Basic Location Determination
Heading
Background Location
Continuous background location
Significant event monitoring
Acceleration and Attitude
Shake Events
Raw Acceleration
Gyroscope
IV. Final Topics
23. Persistent Storage
The Sandbox
Basic File Operations
Saving and Reading Files
User Defaults
File Sharing
Document Types
Handing Off a Document
Document Architecture
iCloud
XML
SQLite
Core Data
Image File Formats
24. Basic Networking
HTTP Requests
Simple HTTP Request
Formal HTTP Request
Multiple Tasks
Background Downloads
Background App Refresh
In-App Purchases
Bonjour
25. Threads
Main Thread
Why Threading Is Hard
Three Ways of Threading
Manual Threads
NSOperation
Grand Central Dispatch
Threads and App Backgrounding
26. Undo
Undo Manager
Target–Action Undo
Undo Grouping
Invocation Undo
Undo Interface
Shake-To-Edit
Undo Menu
A. Application Lifetime Events
Index
About the Author
Colophon
Copyright
← Prev
Back
Next →
← Prev
Back
Next →