• No results found

Beginner level: Modules 1 to 18. Advanced level: Quick review of modules 1 to 18, then following to module A Simple ios Application

N/A
N/A
Protected

Academic year: 2021

Share "Beginner level: Modules 1 to 18. Advanced level: Quick review of modules 1 to 18, then following to module A Simple ios Application"

Copied!
11
0
0

Loading.... (view fulltext now)

Full text

(1)

1- A Simple iOS Application

Creating an Xcode Project

Building Interfaces

Model-View-Controller

Declarations

Declaring instance variables

Declaring methods

Making Connections

Setting pointers

Setting targets and actions

Summary of connections

Implementing Methods

Build and Run on the Simulator

Deploying an Application

Application Icons

Launch Images

• Beginner level:

Modules 1 to 18.

• Advanced level:

Quick review of modules 1 to 18, then following to module 26.

FROM 1st TO 4th OF FEBRUARY 2012

contents of the

app’s creation

training track

(2)

2- Objective-C

Objects

Using Instances

Creating objects

Sending messages

Destroying objects

Beginning RandomPossessions

NSString

NSArray and NSMutableArray

Subclassing an Objective-C Class

Instance variables

Accessor methods

Instance methods

Initializers

Other initializers and the initializer chain

Using Initializers

Class methods

Testing your subclass

Exceptions and the Console Window

Fast Enumeration

Introduction to Challenges

Easy Challenge: Bug Finding

Medium Challenge: Another initializer

Hard Challenge: Another class

Class Names

3- Managing Memory with ARC

The Stack

The Heap

Pointer Variables

ARC and Object Lifetime

Object Ownership

Strong and Weak References

Properties

Copying

Dot Syntax

(3)

4- Delegation and Core Location

Projects, targets, and frameworks

Core Location

Receiving updates from CLLocationManager

Delegation

Protocols

Delegation, controllers, and memory management

Using the Debugger

Using Breakpoints

Diagnosing Crashes and Exceptions

Challenge: Heading

For the More Curious: Build Phases, Compiler Errors, and Linker Errors

Preprocessing

Compiling

Linking

5- MapKit and Text Input

Object Diagrams

MapKit Framework

Interface Properties

Being a MapView Delegate

Using the documentation

Your own MKAnnotation

Tagging locations

Putting the pieces together

Annotation Extras

(4)

6- Subclassing UIView and UIScrollView

Creating a Custom View

The View Hierarchy

The drawRect: Method

Core Graphics

UIKit Drawing Additions

Redrawing Views

Motion Events

Using UIScrollView

Paging

Zooming

Hiding the Status Bar

Colors

Shapes

Another view and Curves

7- View Controllers

UIViewController

Subclassing UIViewController

Another UIViewController

UITabBarController

View Controller Lifecycle

UIViewController and Lazy Loading

View Controller Subclasses and Templates

Another Tab

Controller Logic

For the More Curious: The main function and UIApplication

For the More Curious: Retina Display

(5)

8- Notification and Rotation

Notification Center

UIDevice Notifications

Autorotation

Setting autoresizing masks programmatically and bitwise operations

Forcing Landscape Mode

Proximity Notifications

Overriding Autorotation

9- UITableView and UITableViewController

Beginning the Homepwner Application

UITableViewController

Subclassing UITableViewController

UITableView’s Data Source

BNRItemStore: a singleton

Implementing data source methods

UITableViewCells

Creating and retrieving UITableViewCells

Reusing UITableViewCells

Code Snippet Library

Sections

Constant Rows

Customizing the Table

10- Editing UITableView

Editing Mode

Adding Rows

Deleting Rows

Moving Rows

(6)

11- UINavigationController

UINavigationController

An Additional UIViewController

Navigating with UINavigationController

Pushing view controllers

Passing data between view controllers

Appearing and disappearing views

UINavigationBar

Number Pad

12- Camera

Displaying Images and UIImageView

Taking pictures and UIImagePickerController

BNRImageStore

Creating and using keys

Wrapping up BNRImageStore

Dismissing the keyboard

Challenge: Removing an Image

Recording Video

13- UIPopoverController and Modal View Controllers

Universalizing Homepwner

UIPopoverController

Modal View Controllers

Dismissing modal view controllers

Modal view controller styles

Completion Blocks

Modal view controller transitions

View Controller Relationships

(7)

14- Saving, Loading, and Multitasking

Application Sandbox

Constructing a file path

Archiving

Archiving objects

Unarchiving objects

Application States, Transitions, and Multitasking

Writing to filesystem with NSData

More on Low-Memory Warnings

Model-View-Controller-Store Design Pattern

Challenge: Archiving Whereami

Application State Transitions

Reading and Writing to the filesystem

The Application Bundle

15- Subclassing UITableViewCell

Creating HomepwnerItemCell

Configuring a UITableViewCell subclass’s interface

Exposing the Properties of HomepwnerItemCell

Using HomepwnerItemCell

Image Manipulation

16- Core Data

Object-Relational Mapping

Moving Homepwner to Core Data

The model file

NSManagedObject and subclasses

Updating BNRItemStore

Adding BNRAssetTypes to Homepwner

More About SQL

Trade-offs of Persistence Mechanisms

New Asset Types

(8)

17- Localization

Internationalization using NSLocale

Localizing Resources

NSLocalizedString and Strings Tables

Another Localization

NSBundle’s Role in Internationalization

18- Settings

Updating Whereami

NSUserDefaults

The Settings Application

19-Touch Events and UIResponder

Touch Events

Creating the TouchTracker Application

Drawing with TouchDrawView

Turning Touches into Lines

The Responder Chain

Saving and Loading

Circles

UIControl

20- Core Animation Layer

Layers and views

Creating a CALayer

Layer Content

Implicitly Animatable Properties

Programmatically Generating Content

Layers, Bitmaps, and Contexts

(9)

21- Controlling Animation with CAAnimation

Animation Objects

Spinning with CABasicAnimation

Timing functions

Animation completion

Bouncing with a CAKeyframeAnimation

More Animation

The Presentation Layer and the Model Layer

22- Blocks and Categories

Colorizing TouchDrawView

Blocks

Blocks as variables

Capturing variables

Using blocks with other built-in methods

Keeping code compact with blocks

Categories

Memory Management and Blocks

Pros and Cons of Callback Options

23- Web Services and UIWebView

Web Services

Starting the Nerdfeed application

Fetching data from a URL

Working with NSURLConnection

Parsing XML

A quick tip on logging

UIWebView

NSXMLParser

The Request Body

Credentials

More Data

More UIWebView

(10)

24- UISplitViewController

Splitting Up Nerdfeed

Master-Detail Communication

Displaying the Master View Controller in Portrait Mode

Universalizing Nerdfeed

25- Media Playback and Background Execution

Creating the MediaPlayer Application

System Sounds

Registering system sounds

Playing system sounds

Compressed Audio Files

Playing Movie Files

MPMoviePlayerViewController

Preloading video

Background Processes

Guidelines for background execution

Other forms of background execution

Low-level APIs

Challenge: Audio Recording

26 Bonjour and Web Servers

Bonjour

Creating CocoaServer

Publishing a Bonjour service

Browsing for services via Bonjour

HTTP Communication

Writing a web server in Objective-C

Getting address data from the server

Byte ordering

Making service requests

Receiving service requests

Really cool !! TXTRecords

(11)

26- Push Notifications and Networking

Preparing Client for Push Notifications

Registering for notifications

Provisioning for push notifications

Delivering a Push Notification

Getting the token to the provider

Sending Push Notifications

Connecting to Apple’s server with NSStream

Additional Client-side Notification Handling

Sounds and badges

Accessing data in notifications

References

Related documents