The iPhone responds to motion by using a built-in accelerometer. This is used to detect any changes in orientation, such as when you rotate the device from portrait to landscape. This feedback can be used in applications in many creative ways. For instance, the accelerometer makes it possible to react to shake gestures or to move objects on the screen when the device is tilted.
Images that have an alpha channel are images that have transparency information stored in them. Many image formats support alpha channels, and this is a great way to create advanced graphics and user interfaces for your iPhone applications.
The UIImageView
supports using a series of images as an animation. This is a great effect that is very easy to use and always makes an application stand out.
An application (app for short) is a computer program that executes on a device utilizing the features of the device to perform a task for, serve as a reference for, or entertain a user.
An API defines a collection of protocols, interfaces, and delegates that can be used to interact with applications, hardware, and services of the underlying OS.
The App Store is where users can go to easily download iPhone apps. Once you own an application, the App Store automatically notifies you when there's an update. Apple collects a 30 percent royalty and the rest goes to the developers. The App Store can be accessed for the iPhone or from iTunes on the user's desktop.
A communications protocol that is similar to Wi-Fi, except that it is a peer-to-peer technology. It is a local area network connection also known as a personal area network. The iPhone 3.0 SDK offers ad hoc connectivity built on Bonjour-powered data sharing.
A general method to discover services on a network. Bonjour can help devices find each other on the same network with ease. With Bonjour, one device can advertise a service, and then other devices can search for that service on the network with the service name alone.
Cocoa Touch is the API for creating software applications to run on Apple's iPhone and iPod touch.
Most of the UI animation effects you see on the iPhone are created using the Core Animation libraries. For example, when views flip or curl, that's the Core Animation library at work.
Core Data is a framework that makes working with data far less tedious. Instead of having to manually edit XML, binary, and SQLite objects directly, you can use higher-level entities that represent the same data.
The Core Graphics framework is an API that provides low-level, lightweight 2-D rendering with superb output fidelity. The Quartz 2D API is part of the Core Graphics framework.
Use the Core Location framework to determine the current latitude and longitude of a device, and to configure and schedule the delivery of location-related events.
This refers to the iPhone operating system. Apple releases updates to the iPhone's firmware regularly. Each firmware is assigned a new version number. To date we have had the following iPhone OS firmware versions: 1.0, 1.1, 2.0, 2.1, 2.2, 3.0, and 3.1.
A framework in the iPhone SDK is a software programming library or API. Examples of iPhone SDK frameworks are the Core Location framework and the OpenAL framework.
Describes a scenario where two players are playing a game against each other on the same device, usually at the same time.
In App Purchase allows applications to process financial transactions for purchasing content and services from within your application.
The Inspector is a component of Xcode that allows developers to modify UI control properties. Using the Inspector, you can modify anything from colors to size.
Instruments is an application for debugging and profiling Mac OS X and iPhone OS code. Instruments helps you understand what is going on behind the scenes of applications.
Interface Builder is an application for designing and testing user interfaces. It is a part of Xcode and allows developers to use a visual editor, instead of code, to create their user interfaces.
iTunes is Apple's digital media player application. iTunes connects to the iPhone and iPod touch and synchronizes music, video, and apps to the device. It is also used to update the OS firmware on the devices.
This is also known as internationalization and localization. This feature means applications running on the iPhone can handle different languages and regional differences.
The technology that allows users to use multiple fingers to control many iPhone OS applications.
The NSMutableArray
class creates a modifiable array of objects. This class takes the NSArray
and adds insertion and deletion options in addition to basic array capabilities.
Refers to how opaque something is. If something is completely opaque, it cannot be seen through. Opaque and transparent are opposites of each other. Many user interface controls in the iPhone SDK have an opacity setting.
Short for Open Audio Library, it is an audio API that can process multichannel three-dimensional audio.
OpenGL for Embedded Systems is a mobile optimized version of the OpenGL 3D graphics API.
The iPhone OS stands for the iPhone Operating System. Developers create iPhone applications that are run on top of the iPhone OS. The iPhone OS is made up of many other software libraries, APIs, and applications.
Describes a network situation where two or more systems connect and share responsibilities. Unlike client server connections, a peer in a peer-to-peer configuration will at times act as both client and server. In the iPhone SDK, peer-to-peer is a popular choice for connecting nearby devices over Bluetooth.
A PNG or portable network graphics format file is an image file with an 8-bit transparency alpha channel. It is the native image format of the iPhone SDK.
When you hear Quartz as it relates to the iPhone, always think graphics. Quartz is the primary 2-D graphics-rendering library for the iPhone—and for Mac OS, for that matter.
The iPhone SDK stands for the iPhone Software Development Kit. Developers can use the iPhone SDK to create applications for the iPhone.
The iPhone Simulator lets you build and run your iPhone applications on your computer without using a real device. One advantage of the Simulator is that even registered developers can use it. You do not have to be a paid developer to utilize the Simulator.
The general term for an image or graphic object. Sprites are very common in game programming circles.
SQLite is the database of choice for iPhone applications. It is small, powerful, and free. Support for SQLite is included in Core Data.
The iPhone Status Bar contains the icons located at the top of the screen, which give information about the iPhone's current status. Common status information includes Wi-Fi and cellular connectivity. It can also include Bluetooth and remaining battery status.
Transparent objects are clear and can be seen through. Transparent and opaque are opposites of each other. Many objects in the iPhone SDK, such as the UIImageView
, support transparency.
The UDID is the unique device identifier for an iPhone or iPod touch.
A UIAlertView
is used to show the user a standardized view containing alert information. It operates as a message box and allows the end user to acknowledge and respond appropriately.
The UIButton
class is a UIControl
that creates a button on the screen. A button can receive and respond to touch events. You can set the title, image, and other properties of the button. You can also assign a separate appearance for each button state.
A UIColor
object is used throughout the iPhone SDK to represent color information. It can be used to assign colors to UI elements both at design time and run-time.
The UIDevice
class represents the current device. From this object you can get information about the device, such as unique ID, assigned name, device model, and operating system name and version.
A UIImage
object is a high-level way to display image data. You can create images from files, from Quartz image objects, or from raw image data you receive. The UIImage class also offers several options for drawing images to the current graphics context using different blend modes and opacity values.
A UIImageView
object can display either a single image or an animation of a series of images. You can set the frequency and the duration of the animation, and you can start and stop the animation as needed.
The UILabel
class creates a read-only text view. You can also use this class to draw either one or multiple lines of text. You have options to modify the appearance of your text as well.
The UINavigationBar
is used for navigating up and down through hierarchical content. The UINavigationBar
is usually shown at the top of the screen. It has options for a back button, a title, and an optional right button. You can apply custom views for any of these.
UIScrollView
is the base class for any object that needs to display content that is larger than the size of the application's window. It allows the user to scroll and resize the contents.
The UITextView
is a user interface control that allows for a scrollable, multiline text region. This control allows display of text using a custom font, color, and alignment, and it also supports text editing. You can use a text view to display multiple lines of text.
The UIToolbar
class can contain one of many buttons, called toolbar items.
The UIView class is a base class that defines structure for drawing and handling events. You can also use a UIView
class to contain other views.
The UIViewController
class handles the foundation view management for the iPhone. Everything from tab bars to navigation bars and application views are managed by the UIViewController
. Model views and rotating views are also supported through the UIViewController
.
You use the UIWebView
class to add Web content control in your application. This control also allows you to move backward and forward in the history of Web pages, and you can set some of the control's options programmatically.
User interface is short for graphical user interface. The user interface can be thought of as the means in which a user interacts with an application. This comprises the buttons and other controls of the app. How does the application get input, and how does it return output? It does this through its user interface.
Wi-Fi is a shortened form of wireless LAN, or local area network. Wi-Fi is supported by both the iPhone and the iPod touch and many other computing platforms today.
Xcode is Apple's development environment for creating Mac OS and iPhone OS applications. It is included with every copy of Mac OS X as well.