180 likes | 338 Vues
iPhone/ iPad Programming. Reuben Edwards. Contents. iPhone & iPad Layout Objective-C UIKit Other APIs Alternative Tools. What is an App?. http :// www.youtube.com/watch?v=EhkxDIr0y2U. iPhone. iPad GUI Kit http://www.teehanlax.com/blog/2010/02/01/ipad-gui-psd/. Objective-C.
E N D
iPhone/iPad Programming Reuben Edwards
Contents • iPhone & iPad Layout • Objective-C • UIKit • Other APIs • Alternative Tools
What is an App? • http://www.youtube.com/watch?v=EhkxDIr0y2U
iPad GUI Kithttp://www.teehanlax.com/blog/2010/02/01/ipad-gui-psd/
Objective-C • Superset of ANSI-C • Supports C and C++ code .h – header files .m – Objective C and/or C code .mm C/C++/Obj-C code
Classes • Objective C is object-oriented • Classes specified using an interface and an implementation
Methods • A class in Objective-C can declare two types of methods: instance methods and class methods. • An instance method is a method whose execution is scoped to a particular instance of the class. • Class methods, by comparison, do not require you to create an instance (i.e. static methods)
Messaging • When you want to call a method, you do so by messaging an object. • A message is the method signature, along with the parameter information the method needs. • All messages you send to an object are dispatched dynamically. • Messages are enclosed by brackets ([ and ]). • Inside the brackets, the object receiving the message is on the left side and the message (along with any parameters required by the message) is on the right.
Messaging Example • For example, to send the insertObject:atIndex: message to an object in the myArray variable, you would use the following syntax: [myArrayinsertObject:anObject atIndex:0]; • Objects can be nested: [[myAppObjecttheArray] insertObject:[myAppObjectobjectToInsert] atIndex:0]; • Obj-C also supports dot syntax: myAppObject.theArray = aNewArray;
NSString • The NSString class provides an object wrapper for strings that has all of the advantages you would expect, including built-in memory management for storing arbitrary-length strings, support for Unicode, printf-style formatting utilities, and more. • Because such strings are used commonly though, Objective-C provides a shorthand notation for creating NSString objects from constant values.
UIKit • UI Framework for iOS • Classes: • UIHardware, UIApplication • UIWindow, UIResponder, UIView, UIControl, UIImage, UIImageView • UINavigationBar, UIButtonBar, UITextView, UITextLabel, UITextField, UIKeyboard, UIFontChooser, UISegmentedControl, UISliderControl, UISwitchControl, UIPickerView, UIPushButton, UIAlertSheet, UITransitionView, UITable • UIAnimation
Other APIs • GameKit • Game Center • Authentication, Friends, Leaderboards, Achievements, Auto-matching, Invitations • Peer-to-Peer • Bluetooth Gaming • In-Game Voice • Voice Chat
Other APIs • iAd, StoreKit • AddressBook/AddressBookUI • AudioToolbox/AVFoundation • CoreAnimation, CoreGraphics, CoreLocation, CoreMedia, CoreMotion, CoreTelephony, CoreText • EventKit, ExternalAccessory • MapKit • OpenTK (OpenGLES support)
Other Tools • MonoTouch • C#.NET • Unity • 3D Gaming • RhoMobile • Ruby On Rails • Appcelerator • Javascript • PhoneGap • Javascript • Whoop • Wysiwygwebeditor • MoSync • C/C++