├── ch14 └── MKStoreKit.zip ├── ch07 ├── Box │ ├── Box │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── BoxAppDelegate.h │ │ ├── Box-Prefix.pch │ │ └── main.m │ └── Box.xcodeproj │ │ ├── xcuserdata │ │ └── rnapier.xcuserdatad │ │ │ ├── xcdebugger │ │ │ └── Breakpoints.xcbkptlist │ │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ │ └── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ ├── UserInterfaceState.xcuserstate │ │ ├── xcdebugger │ │ └── Expressions.xcexplist │ │ └── WorkspaceSettings.xcsettings ├── Layers │ ├── Layers │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── pushing.png │ │ ├── pushing.psd │ │ ├── DelegateView.h │ │ ├── LayersViewController.h │ │ ├── LayersAppDelegate.h │ │ ├── Layers-Prefix.pch │ │ └── main.m │ └── Layers.xcodeproj │ │ ├── xcuserdata │ │ └── rnapier.xcuserdatad │ │ │ ├── xcdebugger │ │ │ └── Breakpoints.xcbkptlist │ │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ │ └── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── UserInterfaceState.xcuserstate ├── Actions │ ├── Actions │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── ActionsViewController.h │ │ ├── CircleLayer.h │ │ ├── ActionsAppDelegate.h │ │ ├── Actions-Prefix.pch │ │ └── main.m │ └── Actions.xcodeproj │ │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── rnapier.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist ├── Decoration │ ├── Decoration │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── DecorationViewController.h │ │ ├── DecorationAppDelegate.h │ │ ├── Decoration-Prefix.pch │ │ └── main.m │ └── Decoration.xcodeproj │ │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── rnapier.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist ├── BoxTransform │ ├── BoxTransform │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── BoxTransformAppDelegate.h │ │ ├── BoxTransform-Prefix.pch │ │ └── main.m │ └── BoxTransform.xcodeproj │ │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── rnapier.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist ├── ViewAnimation │ ├── ViewAnimation │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── CircleView.h │ │ ├── ViewAnimationViewController.h │ │ ├── ViewAnimationAppDelegate.h │ │ ├── ViewAnimation-Prefix.pch │ │ ├── main.m │ │ └── CircleView.m │ └── ViewAnimation.xcodeproj │ │ ├── xcuserdata │ │ └── rnapier.xcuserdatad │ │ │ ├── xcdebugger │ │ │ └── Breakpoints.xcbkptlist │ │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ │ └── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── UserInterfaceState.xcuserstate └── LayerAnimation │ ├── LayerAnimation │ ├── en.lproj │ │ └── InfoPlist.strings │ ├── CALayer+RNAnimation.h │ ├── LayerAnimationViewController.h │ ├── LayerAnimationAppDelegate.h │ ├── LayerAnimation-Prefix.pch │ └── main.m │ └── LayerAnimation.xcodeproj │ ├── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ └── rnapier.xcuserdatad │ └── xcschemes │ └── xcschememanagement.plist ├── ch15 ├── KVC │ ├── KVC │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── KVCTableViewController.h │ │ ├── AppDelegate.m │ │ ├── AppDelegate.h │ │ ├── KVC-Prefix.pch │ │ ├── main.m │ │ └── KVCTableViewCell.h │ └── KVC.xcodeproj │ │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── rnapier.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist ├── KVO │ ├── KVO │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── AppDelegate.h │ │ ├── KVO-Prefix.pch │ │ └── main.m │ ├── KVCTableViewController.h │ ├── KVO.xcodeproj │ │ ├── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcuserdata │ │ │ │ └── rnapier.xcuserdatad │ │ │ │ └── UserInterfaceState.xcuserstate │ │ └── xcuserdata │ │ │ └── rnapier.xcuserdatad │ │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ └── KVCTableViewCell.h └── KVC-Collection │ ├── KVC-Collection │ ├── en.lproj │ │ └── InfoPlist.strings │ ├── AppDelegate.h │ ├── KVC-Collection-Prefix.pch │ └── main.m │ ├── KVCTableViewController.h │ ├── KVC-Collection.xcodeproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── rnapier.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ ├── DataModel.h │ └── RootViewController.h ├── ch06 ├── Graph │ ├── Graph │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── GraphViewController.h │ │ ├── GraphView.h │ │ ├── GraphAppDelegate.h │ │ ├── Graph-Prefix.pch │ │ └── main.m │ └── Graph.xcodeproj │ │ ├── xcuserdata │ │ └── rnapier.xcuserdatad │ │ │ ├── xcdebugger │ │ │ └── Breakpoints.xcbkptlist │ │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ │ └── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ ├── UserInterfaceState.xcuserstate │ │ └── WorkspaceSettings.xcsettings ├── Layer │ ├── Layer │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── ViewController.h │ │ ├── AppDelegate.h │ │ ├── Layer-Prefix.pch │ │ └── main.m │ ├── Layer.xcodeproj │ │ ├── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcuserdata │ │ │ │ └── rnapier.xcuserdatad │ │ │ │ └── UserInterfaceState.xcuserstate │ │ └── xcuserdata │ │ │ └── rnapier.xcuserdatad │ │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ └── LayerView.h ├── Paths │ ├── Paths │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── ViewController.h │ │ ├── AppDelegate.h │ │ ├── Paths-Prefix.pch │ │ └── main.m │ ├── Paths.xcodeproj │ │ ├── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcuserdata │ │ │ │ └── rnapier.xcuserdatad │ │ │ │ └── UserInterfaceState.xcuserstate │ │ └── xcuserdata │ │ │ └── rnapier.xcuserdatad │ │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ └── FlowerView.h ├── Drawing │ ├── Drawing │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── MYView.h │ │ ├── DrawingViewController.h │ │ ├── DrawingAppDelegate.h │ │ ├── Drawing-Prefix.pch │ │ └── main.m │ └── Drawing.xcodeproj │ │ ├── xcuserdata │ │ └── rnapier.xcuserdatad │ │ │ ├── xcdebugger │ │ │ └── Breakpoints.xcbkptlist │ │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ │ └── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── UserInterfaceState.xcuserstate ├── BlurryText │ ├── BlurryText │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── AppDelegate.h │ │ ├── ViewController.h │ │ ├── BlurryText-Prefix.pch │ │ └── main.m │ └── BlurryText.xcodeproj │ │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── rnapier.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist ├── Transforms │ ├── Transforms │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── FlowerTransformView.h │ │ ├── TransformsViewController.h │ │ ├── TransformsAppDelegate.h │ │ ├── Transforms-Prefix.pch │ │ └── main.m │ └── Transforms.xcodeproj │ │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── rnapier.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist └── TimeConsuming │ ├── TimeConsuming │ ├── en.lproj │ │ └── InfoPlist.strings │ ├── AppDelegate.h │ ├── TimeConsuming-Prefix.pch │ ├── ViewController.h │ ├── main.m │ └── AppDelegate.m │ └── TimeConsuming.xcodeproj │ ├── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ ├── UserInterfaceState.xcuserstate │ │ └── WorkspaceSettings.xcsettings │ └── xcuserdata │ └── rnapier.xcuserdatad │ └── xcschemes │ └── xcschememanagement.plist ├── ch20 ├── Person │ ├── Person │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── Person.h │ │ ├── Person-Prefix.pch │ │ ├── main.m │ │ └── CacheProxy.h │ └── Person.xcodeproj │ │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── rnapier.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist ├── Runtime │ ├── Runtime │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── FastCall.h │ │ ├── PrintObjectMethods.h │ │ ├── Runtime-Prefix.pch │ │ ├── PrintObjectMethods.m │ │ └── main.m │ ├── Runtime.xcodeproj │ │ ├── xcuserdata │ │ │ └── rnapier.xcuserdatad │ │ │ │ ├── xcdebugger │ │ │ │ └── Breakpoints.xcbkptlist │ │ │ │ └── xcschemes │ │ │ │ └── xcschememanagement.plist │ │ └── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcuserdata │ │ │ └── rnapier.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── MyMsgSend.h ├── ISASwizzle │ ├── ISASwizzle │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── ISASwizzle-Prefix.pch │ ├── ISASwizzle.xcodeproj │ │ ├── project.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcuserdata │ │ │ │ └── rnapier.xcuserdatad │ │ │ │ └── UserInterfaceState.xcuserstate │ │ └── xcuserdata │ │ │ └── rnapier.xcuserdatad │ │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ ├── NSObject+SetClass.h │ ├── MYNotificationCenter.h │ ├── NSObject+SetClass.m │ └── MYNotificationCenter.m └── MethodSwizzle │ ├── MethodSwizzle │ ├── en.lproj │ │ └── InfoPlist.strings │ └── MethodSwizzle-Prefix.pch │ ├── RNSwizzle.h │ ├── MethodSwizzle.xcodeproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── rnapier.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ └── NSNotificationCenter+RNSwizzle.h ├── ch03 ├── AssocRef │ ├── AssocRef │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── AppDelegate.h │ │ ├── AssocRef-Prefix.pch │ │ ├── ViewController.h │ │ └── main.m │ └── AssocRef.xcodeproj │ │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── rnapier.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist └── Flyweight │ ├── Flyweight │ ├── en.lproj │ │ └── InfoPlist.strings │ ├── Flyweight-Prefix.pch │ └── main.m │ ├── Flyweight.xcodeproj │ ├── xcuserdata │ │ └── rnapier.xcuserdatad │ │ │ ├── xcdebugger │ │ │ └── Breakpoints.xcbkptlist │ │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ └── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── UserInterfaceState.xcuserstate │ ├── Person+EmailAddress.h │ ├── Person.h │ └── Person.m ├── ch11 ├── CryptPic │ ├── CryptPic │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── first.png │ │ ├── second.png │ │ ├── first@2x.png │ │ ├── second@2x.png │ │ ├── CPAppDelegate.m │ │ ├── CPAppDelegate.h │ │ ├── CryptPic-Prefix.pch │ │ ├── main.m │ │ ├── CPDecryptViewController.h │ │ └── CPPasswordViewController.h │ └── CryptPic.xcodeproj │ │ ├── project.xcworkspace │ │ └── contents.xcworkspacedata │ │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist ├── Connection │ ├── Connection │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── My Example Server.cer │ │ ├── ConnectionAppDelegate.h │ │ ├── Connection-Prefix.pch │ │ ├── main.m │ │ └── ConnectionViewController.h │ └── Connection.xcodeproj │ │ ├── xcuserdata │ │ └── rnapier.xcuserdatad │ │ │ ├── xcdebugger │ │ │ └── Breakpoints.xcbkptlist │ │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ │ └── project.xcworkspace │ │ └── contents.xcworkspacedata └── FileExplorer │ ├── FileExplorer │ ├── en.lproj │ │ └── InfoPlist.strings │ ├── FileExplorerAppDelegate.h │ ├── FileExplorer-Prefix.pch │ ├── main.m │ └── DirectoryViewController.h │ └── FileExplorer.xcodeproj │ ├── xcuserdata │ └── rnapier.xcuserdatad │ │ ├── xcdebugger │ │ └── Breakpoints.xcbkptlist │ │ └── xcschemes │ │ └── xcschememanagement.plist │ └── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcuserdata │ └── rnapier.xcuserdatad │ └── WorkspaceSettings.xcsettings ├── ch18 ├── Columns │ ├── Columns │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── ViewController.h │ │ ├── AppDelegate.m │ │ ├── ColumnView.h │ │ ├── AppDelegate.h │ │ ├── Columns-Prefix.pch │ │ └── main.m │ └── Columns.xcodeproj │ │ ├── xcuserdata │ │ └── rnapier.xcuserdatad │ │ │ ├── xcdebugger │ │ │ └── Breakpoints.xcbkptlist │ │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ │ └── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── UserInterfaceState.xcuserstate ├── AutoReturn │ ├── AutoReturn │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── AppDelegate.h │ │ ├── ViewController.h │ │ ├── AutoReturn-Prefix.pch │ │ ├── main.m │ │ └── ViewController.m │ └── AutoReturn.xcodeproj │ │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── rnapier.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist ├── CurvyText │ ├── CurvyText │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── ViewController.h │ │ ├── CurvyTextView.h │ │ ├── AppDelegate.h │ │ ├── CurvyText-Prefix.pch │ │ └── main.m │ └── CurvyText.xcodeproj │ │ ├── xcuserdata │ │ └── rnapier.xcuserdatad │ │ │ ├── xcdebugger │ │ │ └── Breakpoints.xcbkptlist │ │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ │ └── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ ├── UserInterfaceState.xcuserstate │ │ └── WorkspaceSettings.xcsettings └── SimpleLayout │ ├── SimpleLayout │ ├── en.lproj │ │ └── InfoPlist.strings │ ├── ViewController.h │ ├── AppDelegate.h │ ├── SimpleLayout-Prefix.pch │ └── main.m │ ├── SimpleLayout.xcodeproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── rnapier.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ └── CoreTextLabel.h ├── ch09 ├── SimpleGCD │ ├── SimpleGCD │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── AppDelegate.h │ │ ├── SimpleGCD-Prefix.pch │ │ ├── main.m │ │ └── ViewController.h │ └── SimpleGCD.xcodeproj │ │ ├── xcuserdata │ │ └── rnapier.xcuserdatad │ │ │ ├── xcdebugger │ │ │ └── Breakpoints.xcbkptlist │ │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ │ └── project.xcworkspace │ │ └── contents.xcworkspacedata ├── SimpleThread │ ├── SimpleThread │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── SimpleCounterThread.h │ │ ├── RunLoopThread.h │ │ ├── STAppDelegate.h │ │ ├── SimpleThread-Prefix.pch │ │ ├── SimpleCounterThread.m │ │ ├── main.m │ │ └── STViewController.h │ └── SimpleThread.xcodeproj │ │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── rnapier.xcuserdatad │ │ │ ├── UserInterfaceState.xcuserstate │ │ │ └── WorkspaceSettings.xcsettings │ │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist └── SimpleOperation │ ├── SimpleOperation │ ├── en.lproj │ │ └── InfoPlist.strings │ ├── AppDelegate.h │ ├── SimpleOperation-Prefix.pch │ ├── main.m │ └── ViewController.h │ └── SimpleOperation.xcodeproj │ ├── xcuserdata │ └── rnapier.xcuserdatad │ │ ├── xcdebugger │ │ └── Breakpoints.xcbkptlist │ │ └── xcschemes │ │ └── xcschememanagement.plist │ └── project.xcworkspace │ └── contents.xcworkspacedata ├── ch10 └── iHotelApp │ ├── iHotelApp │ ├── en.lproj │ │ └── InfoPlist.strings │ ├── main.m │ ├── JSONModel.h │ ├── RESTRequest.h │ ├── iHotelApp-Prefix.pch │ ├── Review.h │ ├── RESTError.h │ ├── iHotelAppViewController.h │ └── iHotelAppAppDelegate.h │ ├── Data │ └── error.json │ └── iHotelApp.xcodeproj │ ├── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcuserdata │ │ └── mugunth.xcuserdatad │ │ └── UserInterfaceState.xcuserstate │ └── xcuserdata │ └── mugunth.xcuserdatad │ └── xcschemes │ └── xcschememanagement.plist ├── ch16 ├── iHotelApp │ ├── iHotelApp │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── main.m │ │ ├── JSONModel.h │ │ ├── RESTRequest.h │ │ ├── iHotelApp-Prefix.pch │ │ ├── Review.h │ │ ├── RESTError.h │ │ ├── iHotelAppViewController.h │ │ └── iHotelAppAppDelegate.h │ ├── Data │ │ └── error.json │ └── iHotelApp.xcodeproj │ │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── mugunth.xcuserdatad │ │ │ └── UserInterfaceState.xcuserstate │ │ └── xcuserdata │ │ └── mugunth.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist └── UIAlertViewWithBlocks │ ├── UIAlertViewWithBlocks │ ├── en.lproj │ │ └── InfoPlist.strings │ ├── UIAlertViewWithBlocksAppDelegate.h │ ├── main.m │ └── UIAlertViewWithBlocks-Prefix.pch │ └── UIAlertViewWithBlocks.xcodeproj │ └── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcuserdata │ └── mugunth.xcuserdatad │ └── UserInterfaceState.xcuserstate ├── ch17 └── iHotelApp │ ├── iHotelApp │ ├── en.lproj │ │ └── InfoPlist.strings │ ├── JSONModel.h │ ├── MenuItemsViewController.h │ ├── RESTRequest.h │ ├── main.m │ ├── AppCache.h │ ├── iHotelApp-Prefix.pch │ ├── Review.h │ ├── RESTError.h │ ├── iHotelAppViewController.h │ └── iHotelAppAppDelegate.h │ ├── Data │ └── error.json │ └── iHotelApp.xcodeproj │ ├── xcuserdata │ └── mugunth.xcuserdatad │ │ ├── xcdebugger │ │ └── Breakpoints.xcbkptlist │ │ └── xcschemes │ │ └── xcschememanagement.plist │ └── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcuserdata │ └── mugunth.xcuserdatad │ ├── UserInterfaceState.xcuserstate │ └── WorkspaceSettings.xcsettings ├── ch08 └── ErrorRecovery │ ├── ErrorRecovery │ ├── en.lproj │ │ └── InfoPlist.strings │ ├── ErrorRecoveryViewController.h │ ├── RNErrorManager.h │ ├── ErrorRecoveryAppDelegate.h │ ├── ErrorRecovery-Prefix.pch │ └── main.m │ └── ErrorRecovery.xcodeproj │ ├── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── WorkspaceSettings.xcsettings │ └── xcuserdata │ └── rnapier.xcuserdatad │ └── xcschemes │ └── xcschememanagement.plist ├── ch19 └── CoreFoundation │ ├── CoreFoundation │ ├── en.lproj │ │ └── InfoPlist.strings │ └── CoreFoundation-Prefix.pch │ ├── CoreFoundation.xcodeproj │ ├── xcuserdata │ │ └── rnapier.xcuserdatad │ │ │ ├── xcdebugger │ │ │ └── Breakpoints.xcbkptlist │ │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ └── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── UserInterfaceState.xcuserstate │ └── MYStringConversion.h ├── ch04 └── ObserverTrampoline │ ├── ObserverTrampoline │ ├── en.lproj │ │ └── InfoPlist.strings │ ├── AppDelegate.h │ ├── ViewController.h │ ├── ObserverTrampoline-Prefix.pch │ └── main.m │ ├── ObserverTrampoline.xcodeproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── rnapier.xcuserdatad │ │ │ ├── UserInterfaceState.xcuserstate │ │ │ └── WorkspaceSettings.xcsettings │ └── xcuserdata │ │ └── rnapier.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist │ └── RNMainThreadTrampoline.h ├── ch05 ├── InlineEditingExample │ ├── InlineEditingExample │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── main.m │ │ ├── InlineEditingExample-Prefix.pch │ │ ├── InlineEditingExampleViewController.h │ │ ├── LabelTextFieldCell.h │ │ └── InlineEditingExampleAppDelegate.h │ └── InlineEditingExample.xcodeproj │ │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── mugunth.xcuserdatad │ │ │ ├── UserInterfaceState.xcuserstate │ │ │ └── WorkspaceSettings.xcsettings │ │ └── xcuserdata │ │ └── mugunth.xcuserdatad │ │ └── xcschemes │ │ └── xcschememanagement.plist ├── TableViewPerformance │ ├── TableViewPerformance │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── ios5.png │ │ ├── TableViewPerformanceViewController.h │ │ ├── main.m │ │ ├── TableViewPerformance-Prefix.pch │ │ ├── CustomCell.h │ │ ├── TableViewPerformanceAppDelegate.h │ │ └── CustomDrawnCell.h │ └── TableViewPerformance.xcodeproj │ │ ├── xcuserdata │ │ └── mugunth.xcuserdatad │ │ │ ├── xcdebugger │ │ │ └── Breakpoints.xcbkptlist │ │ │ └── xcschemes │ │ │ └── xcschememanagement.plist │ │ └── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ └── mugunth.xcuserdatad │ │ ├── UserInterfaceState.xcuserstate │ │ └── WorkspaceSettings.xcsettings ├── InfiniteScrollingExample │ ├── InfiniteScrollingExample │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── ios5.png │ │ ├── RefreshArrow.png │ │ ├── RefreshArrow@2x.png │ │ ├── main.m │ │ ├── InfiniteScrollingExample-Prefix.pch │ │ ├── InfiniteScrollingExampleViewController.h │ │ └── InfiniteScrollingExampleAppDelegate.h │ └── InfiniteScrollingExample.xcodeproj │ │ ├── xcuserdata │ │ └── mugunth.xcuserdatad │ │ │ └── xcdebugger │ │ │ └── Breakpoints.xcbkptlist │ │ └── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ └── mugunth.xcuserdatad │ │ ├── UserInterfaceState.xcuserstate │ │ └── WorkspaceSettings.xcsettings ├── NonRepeatingCellsExample │ ├── NonRepeatingCellsExample │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── BodyCell.h │ │ ├── FooterCell.h │ │ ├── HeaderCell.h │ │ ├── main.m │ │ ├── NonRepeatingCellsExample-Prefix.pch │ │ └── NonRepeatingCellsExampleAppDelegate.h │ └── NonRepeatingCellsExample.xcodeproj │ │ └── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcuserdata │ │ └── mugunth.xcuserdatad │ │ ├── UserInterfaceState.xcuserstate │ │ └── WorkspaceSettings.xcsettings └── PullToRefreshTableViewExample │ ├── PullToRefreshTableViewExample │ ├── en.lproj │ │ └── InfoPlist.strings │ ├── ios5.png │ ├── RefreshArrow.png │ ├── RefreshArrow@2x.png │ ├── main.m │ ├── PullToRefreshTableViewExampleViewController.h │ ├── PullToRefreshTableViewExample-Prefix.pch │ └── PullToRefreshTableViewExampleAppDelegate.h │ └── PullToRefreshTableViewExample.xcodeproj │ ├── xcuserdata │ └── mugunth.xcuserdatad │ │ └── xcdebugger │ │ └── Breakpoints.xcbkptlist │ └── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcuserdata │ └── mugunth.xcuserdatad │ ├── UserInterfaceState.xcuserstate │ └── WorkspaceSettings.xcsettings └── ch13 └── Money ├── Money └── Money-Prefix.pch └── Money.xcodeproj ├── project.xcworkspace └── contents.xcworkspacedata └── xcuserdata └── rnapier.xcuserdatad └── xcschemes └── xcschememanagement.plist /ch14/MKStoreKit.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch14/MKStoreKit.zip -------------------------------------------------------------------------------- /ch07/Box/Box/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch15/KVC/KVC/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch15/KVO/KVO/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch06/Graph/Graph/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch06/Layer/Layer/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch06/Paths/Paths/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch07/Layers/Layers/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch20/Person/Person/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch03/AssocRef/AssocRef/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch06/Drawing/Drawing/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch07/Actions/Actions/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch11/CryptPic/CryptPic/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch18/Columns/Columns/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch20/Runtime/Runtime/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch03/Flyweight/Flyweight/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch06/BlurryText/BlurryText/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch06/Transforms/Transforms/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch07/Decoration/Decoration/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch09/SimpleGCD/SimpleGCD/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch10/iHotelApp/iHotelApp/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch11/Connection/Connection/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch16/iHotelApp/iHotelApp/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch17/iHotelApp/iHotelApp/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch18/AutoReturn/AutoReturn/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch18/CurvyText/CurvyText/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch20/ISASwizzle/ISASwizzle/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch06/TimeConsuming/TimeConsuming/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch07/BoxTransform/BoxTransform/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch07/Layers/Layers/pushing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch07/Layers/Layers/pushing.png -------------------------------------------------------------------------------- /ch07/Layers/Layers/pushing.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch07/Layers/Layers/pushing.psd -------------------------------------------------------------------------------- /ch07/ViewAnimation/ViewAnimation/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch08/ErrorRecovery/ErrorRecovery/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch09/SimpleThread/SimpleThread/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch11/FileExplorer/FileExplorer/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch18/SimpleLayout/SimpleLayout/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch20/MethodSwizzle/MethodSwizzle/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch07/LayerAnimation/LayerAnimation/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch09/SimpleOperation/SimpleOperation/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch11/CryptPic/CryptPic/first.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch11/CryptPic/CryptPic/first.png -------------------------------------------------------------------------------- /ch11/CryptPic/CryptPic/second.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch11/CryptPic/CryptPic/second.png -------------------------------------------------------------------------------- /ch15/KVC-Collection/KVC-Collection/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch19/CoreFoundation/CoreFoundation/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch04/ObserverTrampoline/ObserverTrampoline/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch11/CryptPic/CryptPic/first@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch11/CryptPic/CryptPic/first@2x.png -------------------------------------------------------------------------------- /ch11/CryptPic/CryptPic/second@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch11/CryptPic/CryptPic/second@2x.png -------------------------------------------------------------------------------- /ch05/InlineEditingExample/InlineEditingExample/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch05/TableViewPerformance/TableViewPerformance/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch16/UIAlertViewWithBlocks/UIAlertViewWithBlocks/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch05/InfiniteScrollingExample/InfiniteScrollingExample/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch05/NonRepeatingCellsExample/NonRepeatingCellsExample/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch10/iHotelApp/Data/error.json: -------------------------------------------------------------------------------- 1 | { 2 | "menuitems":[], 3 | "error" : 4 | { 5 | "errorCode":"2001", 6 | "message":"Cannot fetch" 7 | } 8 | } -------------------------------------------------------------------------------- /ch16/iHotelApp/Data/error.json: -------------------------------------------------------------------------------- 1 | { 2 | "menuitems":[], 3 | "error" : 4 | { 5 | "errorCode":"2001", 6 | "message":"Cannot fetch" 7 | } 8 | } -------------------------------------------------------------------------------- /ch17/iHotelApp/Data/error.json: -------------------------------------------------------------------------------- 1 | { 2 | "menuitems":[], 3 | "error" : 4 | { 5 | "errorCode":"2001", 6 | "message":"Cannot fetch" 7 | } 8 | } -------------------------------------------------------------------------------- /ch05/PullToRefreshTableViewExample/PullToRefreshTableViewExample/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ch11/Connection/Connection/My Example Server.cer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch11/Connection/Connection/My Example Server.cer -------------------------------------------------------------------------------- /ch05/TableViewPerformance/TableViewPerformance/ios5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch05/TableViewPerformance/TableViewPerformance/ios5.png -------------------------------------------------------------------------------- /ch05/InfiniteScrollingExample/InfiniteScrollingExample/ios5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch05/InfiniteScrollingExample/InfiniteScrollingExample/ios5.png -------------------------------------------------------------------------------- /ch05/InfiniteScrollingExample/InfiniteScrollingExample/RefreshArrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch05/InfiniteScrollingExample/InfiniteScrollingExample/RefreshArrow.png -------------------------------------------------------------------------------- /ch05/InfiniteScrollingExample/InfiniteScrollingExample/RefreshArrow@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch05/InfiniteScrollingExample/InfiniteScrollingExample/RefreshArrow@2x.png -------------------------------------------------------------------------------- /ch05/PullToRefreshTableViewExample/PullToRefreshTableViewExample/ios5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch05/PullToRefreshTableViewExample/PullToRefreshTableViewExample/ios5.png -------------------------------------------------------------------------------- /ch07/Box/Box.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /ch06/Graph/Graph.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /ch06/Drawing/Drawing.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /ch07/Layers/Layers.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /ch15/KVC/KVC/KVCTableViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // KVCTableViewController.h 3 | // 4 | 5 | #import 6 | 7 | @interface KVCTableViewController : UITableViewController 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /ch18/Columns/Columns.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /ch20/Runtime/Runtime.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /ch03/Flyweight/Flyweight.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /ch05/PullToRefreshTableViewExample/PullToRefreshTableViewExample/RefreshArrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch05/PullToRefreshTableViewExample/PullToRefreshTableViewExample/RefreshArrow.png -------------------------------------------------------------------------------- /ch09/SimpleGCD/SimpleGCD.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /ch11/Connection/Connection.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /ch13/Money/Money/Money-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'Money' target in the 'Money' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | -------------------------------------------------------------------------------- /ch17/iHotelApp/iHotelApp.xcodeproj/xcuserdata/mugunth.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /ch18/CurvyText/CurvyText.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /ch05/PullToRefreshTableViewExample/PullToRefreshTableViewExample/RefreshArrow@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch05/PullToRefreshTableViewExample/PullToRefreshTableViewExample/RefreshArrow@2x.png -------------------------------------------------------------------------------- /ch07/ViewAnimation/ViewAnimation.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /ch11/FileExplorer/FileExplorer.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /ch15/KVC-Collection/KVCTableViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // KVCTableViewController.h 3 | // 4 | 5 | #import 6 | 7 | @interface KVCTableViewController : UITableViewController 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /ch09/SimpleOperation/SimpleOperation.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /ch15/KVO/KVCTableViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // KVCTableViewController.h 3 | // Chapter13 4 | // 5 | 6 | #import 7 | 8 | @interface KVCTableViewController : UITableViewController 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /ch19/CoreFoundation/CoreFoundation.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /ch05/TableViewPerformance/TableViewPerformance.xcodeproj/xcuserdata/mugunth.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /ch05/InfiniteScrollingExample/InfiniteScrollingExample.xcodeproj/xcuserdata/mugunth.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /ch07/Box/Box.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch11/CryptPic/CryptPic/CPAppDelegate.m: -------------------------------------------------------------------------------- 1 | // 2 | // CPAppDelegate.m 3 | // CryptPic 4 | // 5 | 6 | #import "CPAppDelegate.h" 7 | 8 | @implementation CPAppDelegate 9 | 10 | @synthesize window = _window; 11 | 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch15/KVC/KVC.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch15/KVO/KVO.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch19/CoreFoundation/MYStringConversion.h: -------------------------------------------------------------------------------- 1 | // 2 | // MYStringConversion.h 3 | // Chapter17 4 | // 5 | 6 | char * MYCFStringCopyUTF8String(CFStringRef aString); 7 | const char * MYCFStringGetUTF8String(CFStringRef aString, char **buffer); 8 | -------------------------------------------------------------------------------- /ch05/PullToRefreshTableViewExample/PullToRefreshTableViewExample.xcodeproj/xcuserdata/mugunth.xcuserdatad/xcdebugger/Breakpoints.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /ch06/Graph/Graph.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch06/Layer/Layer.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch06/Paths/Paths.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch07/Layers/Layers.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch13/Money/Money.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch20/Person/Person.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch03/AssocRef/AssocRef.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch06/Drawing/Drawing.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch07/Actions/Actions.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch07/Box/Box.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch07/Box/Box.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch11/CryptPic/CryptPic.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch15/KVC/KVC.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch15/KVC/KVC.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch15/KVO/KVO.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch15/KVO/KVO.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch18/Columns/Columns.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch20/Runtime/Runtime.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch03/Flyweight/Flyweight.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch09/SimpleGCD/SimpleGCD.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch10/iHotelApp/iHotelApp.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch16/iHotelApp/iHotelApp.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch17/iHotelApp/iHotelApp.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch18/CurvyText/CurvyText.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch06/BlurryText/BlurryText.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch06/Graph/Graph.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch06/Graph/Graph.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch06/Layer/Layer.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch06/Layer/Layer.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch06/Paths/Paths.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch06/Paths/Paths.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch06/Transforms/Transforms.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch07/Decoration/Decoration.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch11/Connection/Connection.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch18/AutoReturn/AutoReturn.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch20/ISASwizzle/ISASwizzle.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch20/MethodSwizzle/RNSwizzle.h: -------------------------------------------------------------------------------- 1 | // 2 | // RNSwizzle.h 3 | // MethodSwizzle 4 | 5 | #import 6 | 7 | @interface NSObject (RNSwizzle) 8 | + (IMP)swizzleSelector:(SEL)origSelector 9 | withIMP:(IMP)newIMP; 10 | @end 11 | -------------------------------------------------------------------------------- /ch06/TimeConsuming/TimeConsuming.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch07/BoxTransform/BoxTransform.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch07/Layers/Layers.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch07/Layers/Layers.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch07/ViewAnimation/ViewAnimation.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch08/ErrorRecovery/ErrorRecovery.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch09/SimpleThread/SimpleThread.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch11/FileExplorer/FileExplorer.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch18/SimpleLayout/SimpleLayout.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch20/MethodSwizzle/MethodSwizzle.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch20/Person/Person.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch20/Person/Person.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch20/Runtime/Runtime/FastCall.h: -------------------------------------------------------------------------------- 1 | // 2 | // FastCall.h 3 | // Runtime 4 | // 5 | // Created by Rob Napier on 8/22/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | void FastCall(void); 12 | -------------------------------------------------------------------------------- /ch03/AssocRef/AssocRef.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch03/AssocRef/AssocRef.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch06/Drawing/Drawing.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch06/Drawing/Drawing.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch06/Layer/LayerView.h: -------------------------------------------------------------------------------- 1 | // 2 | // LayerView.h 3 | // Layer 4 | // 5 | // Created by Rob Napier on 7/9/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface LayerView : UIView 12 | @end 13 | -------------------------------------------------------------------------------- /ch07/Actions/Actions.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch07/Actions/Actions.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch07/LayerAnimation/LayerAnimation.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch15/KVC-Collection/KVC-Collection.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch18/Columns/Columns.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch18/Columns/Columns.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch19/CoreFoundation/CoreFoundation.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch20/Runtime/Runtime.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch20/Runtime/Runtime.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch03/Flyweight/Flyweight.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch03/Flyweight/Flyweight.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch06/Paths/FlowerView.h: -------------------------------------------------------------------------------- 1 | // 2 | // MYView.h 3 | // Paths 4 | // 5 | // Created by Rob Napier on 6/29/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface FlowerView : UIView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch09/SimpleOperation/SimpleOperation.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch10/iHotelApp/iHotelApp.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch10/iHotelApp/iHotelApp.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch11/CryptPic/CryptPic/CPAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // CPAppDelegate.h 3 | // CryptPic 4 | // 5 | 6 | #import 7 | 8 | @interface CPAppDelegate : UIResponder 9 | 10 | @property (strong, nonatomic) UIWindow *window; 11 | 12 | @end 13 | -------------------------------------------------------------------------------- /ch16/iHotelApp/iHotelApp.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch16/iHotelApp/iHotelApp.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch17/iHotelApp/iHotelApp.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch17/iHotelApp/iHotelApp.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch18/CurvyText/CurvyText.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch18/CurvyText/CurvyText.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch04/ObserverTrampoline/ObserverTrampoline.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch06/BlurryText/BlurryText.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch06/BlurryText/BlurryText.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch06/Transforms/Transforms.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch06/Transforms/Transforms.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch07/Decoration/Decoration.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch07/Decoration/Decoration.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch18/AutoReturn/AutoReturn.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch18/AutoReturn/AutoReturn.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch20/ISASwizzle/ISASwizzle.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch20/ISASwizzle/ISASwizzle.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch06/Drawing/Drawing/MYView.h: -------------------------------------------------------------------------------- 1 | // 2 | // MYSmarterView.h 3 | // Drawing 4 | // 5 | // Created by Rob Napier on 6/28/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface MYView : UIView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch05/InlineEditingExample/InlineEditingExample.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch05/TableViewPerformance/TableViewPerformance.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch06/TimeConsuming/TimeConsuming.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch06/TimeConsuming/TimeConsuming.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch07/BoxTransform/BoxTransform.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch07/BoxTransform/BoxTransform.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch07/ViewAnimation/ViewAnimation.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch07/ViewAnimation/ViewAnimation.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch09/SimpleThread/SimpleThread.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch09/SimpleThread/SimpleThread.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch16/UIAlertViewWithBlocks/UIAlertViewWithBlocks.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch18/SimpleLayout/SimpleLayout.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch18/SimpleLayout/SimpleLayout.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch20/MethodSwizzle/MethodSwizzle.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch20/MethodSwizzle/MethodSwizzle.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch07/LayerAnimation/LayerAnimation.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch07/LayerAnimation/LayerAnimation.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch07/Layers/Layers/DelegateView.h: -------------------------------------------------------------------------------- 1 | // 2 | // DelegateView.h 3 | // Layers 4 | // 5 | // Created by Rob Napier on 7/16/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface DelegateView : UIView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch15/KVC-Collection/KVC-Collection.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch15/KVC-Collection/KVC-Collection.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch19/CoreFoundation/CoreFoundation.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch19/CoreFoundation/CoreFoundation.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch20/Runtime/Runtime/PrintObjectMethods.h: -------------------------------------------------------------------------------- 1 | // 2 | // PrintObjectMethods.h 3 | // Runtime 4 | // 5 | // Created by Rob Napier on 8/22/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | void PrintObjectMethods(void); 12 | -------------------------------------------------------------------------------- /ch05/InfiniteScrollingExample/InfiniteScrollingExample.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch05/NonRepeatingCellsExample/NonRepeatingCellsExample.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch10/iHotelApp/iHotelApp/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // iHotelApp 4 | // 5 | 6 | #import 7 | 8 | int main(int argc, char *argv[]) 9 | { 10 | @autoreleasepool { 11 | int retVal = UIApplicationMain(argc, argv, nil, nil); 12 | return retVal; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /ch16/iHotelApp/iHotelApp/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // iHotelApp 4 | // 5 | 6 | #import 7 | 8 | int main(int argc, char *argv[]) 9 | { 10 | @autoreleasepool { 11 | int retVal = UIApplicationMain(argc, argv, nil, nil); 12 | return retVal; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /ch17/iHotelApp/iHotelApp/JSONModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // ModelBase.h 3 | // Steinlogic 4 | // 5 | 6 | #import 7 | 8 | @interface JSONModel : NSObject 9 | 10 | -(id) initWithDictionary:(NSMutableDictionary*) jsonObject; 11 | 12 | @end 13 | -------------------------------------------------------------------------------- /ch04/ObserverTrampoline/ObserverTrampoline.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch04/ObserverTrampoline/ObserverTrampoline.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch06/Layer/Layer/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Layer 4 | // 5 | // Created by Rob Napier on 9/18/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch06/Paths/Paths/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Paths 4 | // 5 | // Created by Rob Napier on 9/18/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch07/ViewAnimation/ViewAnimation/CircleView.h: -------------------------------------------------------------------------------- 1 | // 2 | // CircleView.h 3 | // ViewAnimation 4 | // 5 | // Created by Rob Napier on 7/13/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface CircleView : UIView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch15/KVC-Collection/DataModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // DataModel.h 3 | // 4 | 5 | #import 6 | 7 | @interface DataModel : NSObject 8 | 9 | + (DataModel*)sharedModel; 10 | 11 | - (void)addItem; 12 | - (NSUInteger)countOfItems; 13 | - (id)objectInItemsAtIndex:(NSUInteger)index; 14 | @end 15 | -------------------------------------------------------------------------------- /ch05/PullToRefreshTableViewExample/PullToRefreshTableViewExample.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ch10/iHotelApp/iHotelApp/JSONModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // ModelBase.h 3 | // iHotelApp 4 | // 5 | 6 | #import 7 | 8 | @interface JSONModel : NSObject { 9 | 10 | } 11 | 12 | -(id) initWithDictionary:(NSMutableDictionary*) jsonObject; 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /ch16/iHotelApp/iHotelApp/JSONModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // ModelBase.h 3 | // iHotelApp 4 | // 5 | 6 | #import 7 | 8 | @interface JSONModel : NSObject { 9 | 10 | } 11 | 12 | -(id) initWithDictionary:(NSMutableDictionary*) jsonObject; 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /ch18/Columns/Columns/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Columns 4 | // 5 | // Created by Rob Napier on 8/26/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch05/InlineEditingExample/InlineEditingExample.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch05/InlineEditingExample/InlineEditingExample.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch05/TableViewPerformance/TableViewPerformance.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch05/TableViewPerformance/TableViewPerformance.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch06/Graph/Graph/GraphViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // GraphViewController.h 3 | // Graph 4 | // 5 | // Created by Rob Napier on 7/6/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GraphViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch20/Runtime/MyMsgSend.h: -------------------------------------------------------------------------------- 1 | // 2 | // MyMsgSend.h 3 | // Runtime 4 | // 5 | // Created by Rob Napier on 8/22/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #ifndef Runtime_MyMsgSend_h 10 | #define Runtime_MyMsgSend_h 11 | 12 | void RunMyMsgSend(void); 13 | 14 | #endif 15 | -------------------------------------------------------------------------------- /ch06/Transforms/Transforms/FlowerTransformView.h: -------------------------------------------------------------------------------- 1 | // 2 | // FlowerTransformView.h 3 | // Transforms 4 | // 5 | // Created by Rob Napier on 6/29/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface FlowerTransformView : UIView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch15/KVC/KVC/AppDelegate.m: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.m 3 | // KVC 4 | // 5 | // Created by Rob Napier on 9/12/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import "AppDelegate.h" 10 | 11 | @implementation AppDelegate 12 | 13 | @synthesize window = _window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch16/UIAlertViewWithBlocks/UIAlertViewWithBlocks.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch16/UIAlertViewWithBlocks/UIAlertViewWithBlocks.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch17/iHotelApp/iHotelApp/MenuItemsViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // MenuItemsViewController.h 3 | // iHotelApp 4 | // 5 | 6 | #import 7 | 8 | 9 | @interface MenuItemsViewController : UITableViewController { 10 | 11 | } 12 | 13 | @property (nonatomic, strong) NSMutableArray *menuItems; 14 | @end 15 | -------------------------------------------------------------------------------- /ch18/CurvyText/CurvyText/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // CurvyText 4 | // 5 | // Created by Rob Napier on 8/28/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch07/Layers/Layers/LayersViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // LayersViewController.h 3 | // Layers 4 | // 5 | // Created by Rob Napier on 7/16/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface LayersViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch18/SimpleLayout/SimpleLayout/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // SimpleLayout 4 | // 5 | // Created by Rob Napier on 8/25/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch05/InfiniteScrollingExample/InfiniteScrollingExample.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch05/InfiniteScrollingExample/InfiniteScrollingExample.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch05/NonRepeatingCellsExample/NonRepeatingCellsExample.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch05/NonRepeatingCellsExample/NonRepeatingCellsExample.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch06/Drawing/Drawing/DrawingViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // DrawingViewController.h 3 | // Drawing 4 | // 5 | // Created by Rob Napier on 6/28/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface DrawingViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch07/Actions/Actions/ActionsViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ActionsViewController.h 3 | // Actions 4 | // 5 | // Created by Rob Napier on 7/17/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ActionsViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch18/Columns/Columns/AppDelegate.m: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.m 3 | // Columns 4 | // 5 | // Created by Rob Napier on 8/26/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import "AppDelegate.h" 10 | 11 | @implementation AppDelegate 12 | 13 | @synthesize window = _window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch06/Graph/Graph/GraphView.h: -------------------------------------------------------------------------------- 1 | // 2 | // GraphView.h 3 | // Graph 4 | // 5 | // Created by Rob Napier on 7/6/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GraphView : UIView 12 | @property (nonatomic, readonly, strong) NSMutableArray *values; 13 | @end 14 | -------------------------------------------------------------------------------- /ch09/SimpleThread/SimpleThread/SimpleCounterThread.h: -------------------------------------------------------------------------------- 1 | // 2 | // SimpleCounterThread.h 3 | // SimpleThread 4 | // 5 | // Created by Rob Napier on 8/14/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import "CounterThread.h" 10 | 11 | @interface SimpleCounterThread : CounterThread 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch20/ISASwizzle/NSObject+SetClass.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSObject+SetClass.h 3 | // ISASwizzle 4 | // 5 | // Created by Rob Napier on 6/8/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSObject (SetClass) 12 | - (void)setClass:(Class)aClass; 13 | @end 14 | -------------------------------------------------------------------------------- /ch05/NonRepeatingCellsExample/NonRepeatingCellsExample/BodyCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // BodyCell.h 3 | // NonRepeatingCellsExample 4 | // 5 | // Created by Mugunth Kumar M on 26/8/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface BodyCell : UITableViewCell 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch06/Transforms/Transforms/TransformsViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // TransformsViewController.h 3 | // Transforms 4 | // 5 | // Created by Rob Napier on 6/29/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface TransformsViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch07/Decoration/Decoration/DecorationViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // DecorationViewController.h 3 | // Decoration 4 | // 5 | // Created by Rob Napier on 7/20/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface DecorationViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch03/Flyweight/Person+EmailAddress.h: -------------------------------------------------------------------------------- 1 | // 2 | // Person+EmailAddress.h 3 | // Flyweight 4 | // 5 | // Created by Rob Napier on 9/14/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import "Person.h" 10 | 11 | @interface Person (EmailAddress) 12 | @property (readwrite, copy) NSString *emailAddress; 13 | @end 14 | -------------------------------------------------------------------------------- /ch05/NonRepeatingCellsExample/NonRepeatingCellsExample/FooterCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // FooterCell.h 3 | // NonRepeatingCellsExample 4 | // 5 | // Created by Mugunth Kumar M on 26/8/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface FooterCell : UITableViewCell 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch05/NonRepeatingCellsExample/NonRepeatingCellsExample/HeaderCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // HeaderCell.h 3 | // NonRepeatingCellsExample 4 | // 5 | // Created by Mugunth Kumar M on 26/8/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface HeaderCell : UITableViewCell 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch05/PullToRefreshTableViewExample/PullToRefreshTableViewExample.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/iosptl/ios5ptl/HEAD/ch05/PullToRefreshTableViewExample/PullToRefreshTableViewExample.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /ch05/TableViewPerformance/TableViewPerformance/TableViewPerformanceViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // TableViewPerformanceViewController.h 3 | // TableViewPerformance 4 | // 5 | // Created by Mugunth Kumar M on 23/8/11. 6 | // 7 | 8 | #import 9 | 10 | @interface TableViewPerformanceViewController : UIViewController 11 | 12 | @end 13 | -------------------------------------------------------------------------------- /ch07/Actions/Actions/CircleLayer.h: -------------------------------------------------------------------------------- 1 | // 2 | // CircleLayer.h 3 | // Actions 4 | // 5 | // Created by Rob Napier on 7/17/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface CircleLayer : CALayer 12 | @property (nonatomic, readwrite, assign) CGFloat radius; 13 | @end 14 | -------------------------------------------------------------------------------- /ch18/Columns/Columns/ColumnView.h: -------------------------------------------------------------------------------- 1 | // 2 | // ColumnView.h 3 | // Columns 4 | // 5 | // Created by Rob Napier on 8/26/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ColumnView : UIView 12 | @property (nonatomic, copy) NSAttributedString *attributedString; 13 | @end 14 | -------------------------------------------------------------------------------- /ch15/KVO/KVCTableViewCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // KVCTableViewCell.h 3 | // Chapter13 4 | // 5 | 6 | #import 7 | 8 | @interface KVCTableViewCell : UITableViewCell 9 | - (id)initWithReuseIdentifier:(NSString*)identifier; 10 | @property (nonatomic, readwrite, strong) id target; 11 | @property (nonatomic, readwrite, copy) NSString *property; 12 | @end 13 | -------------------------------------------------------------------------------- /ch07/LayerAnimation/LayerAnimation/CALayer+RNAnimation.h: -------------------------------------------------------------------------------- 1 | // 2 | // CALayer+RNAnimation.h 3 | // Actions 4 | // 5 | 6 | #import 7 | 8 | @interface CALayer (RNAnimation) 9 | - (void)setValue:(id)value forKeyPath:(NSString *)keyPath 10 | duration:(CFTimeInterval)duration 11 | delay:(CFTimeInterval)delay; 12 | @end 13 | -------------------------------------------------------------------------------- /ch08/ErrorRecovery/ErrorRecovery/ErrorRecoveryViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ErrorRecoveryViewController.h 3 | // ErrorRecovery 4 | // 5 | // Created by Rob Napier on 7/25/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ErrorRecoveryViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch18/SimpleLayout/CoreTextLabel.h: -------------------------------------------------------------------------------- 1 | // 2 | // CoreTextLabel.h 3 | // SimpleLayout 4 | // 5 | // Created by Rob Napier on 8/25/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface CoreTextLabel : UIView 12 | @property (nonatomic, copy) NSAttributedString *attributedString; 13 | @end 14 | -------------------------------------------------------------------------------- /ch20/Person/Person/Person.h: -------------------------------------------------------------------------------- 1 | // 2 | // Person.h 3 | // Person 4 | // 5 | // Created by Rob Napier on 8/22/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface Person : NSObject 12 | @property (copy) NSString *givenName; 13 | @property (copy) NSString *surname; 14 | @end 15 | -------------------------------------------------------------------------------- /ch07/LayerAnimation/LayerAnimation/LayerAnimationViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // LayerAnimationViewController.h 3 | // LayerAnimation 4 | // 5 | // Created by Rob Napier on 7/17/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface LayerAnimationViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch09/SimpleThread/SimpleThread/RunLoopThread.h: -------------------------------------------------------------------------------- 1 | // 2 | // RunLoopThread.h 3 | // SimpleThread 4 | // 5 | // Created by Rob Napier on 8/14/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import "CounterThread.h" 10 | 11 | @interface RunLoopThread : CounterThread 12 | @property (strong, nonatomic) NSTimer *timer; 13 | @end 14 | -------------------------------------------------------------------------------- /ch15/KVC/KVC/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // KVC 4 | // 5 | // Created by Rob Napier on 9/12/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch15/KVO/KVO/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // KVO 4 | // 5 | // Created by Rob Napier on 9/12/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch18/CurvyText/CurvyText/CurvyTextView.h: -------------------------------------------------------------------------------- 1 | // 2 | // CurvyTextView.h 3 | // CurvyText 4 | // 5 | // Created by Rob Napier on 8/28/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface CurvyTextView : UIView 12 | @property (nonatomic, copy) NSAttributedString *attributedString; 13 | @end 14 | -------------------------------------------------------------------------------- /ch06/Layer/Layer/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // Layer 4 | // 5 | // Created by Rob Napier on 9/18/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch06/Paths/Paths/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // Paths 4 | // 5 | // Created by Rob Napier on 9/18/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch07/Box/Box/BoxAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // BoxAppDelegate.h 3 | // Box 4 | // 5 | // Created by Rob Napier on 7/19/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface BoxAppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch16/UIAlertViewWithBlocks/UIAlertViewWithBlocks/UIAlertViewWithBlocksAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIAlertViewWithBlocksAppDelegate.h 3 | // UIAlertViewWithBlocks 4 | // 5 | 6 | #import 7 | 8 | @interface UIAlertViewWithBlocksAppDelegate : NSObject 9 | 10 | @property (nonatomic, strong) IBOutlet UIWindow *window; 11 | 12 | @end 13 | -------------------------------------------------------------------------------- /ch20/MethodSwizzle/NSNotificationCenter+RNSwizzle.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSNotification+RNSwizzle.h 3 | // MethodSwizzle 4 | // 5 | // Created by Rob Napier on 6/8/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSNotificationCenter (RNSwizzle) 12 | + (void)swizzleAddObserver; 13 | @end 14 | -------------------------------------------------------------------------------- /ch18/Columns/Columns/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // Columns 4 | // 5 | // Created by Rob Napier on 8/26/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch03/AssocRef/AssocRef/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // AssocRef 4 | // 5 | // Created by Rob Napier on 9/14/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch06/Graph/Graph/GraphAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // GraphAppDelegate.h 3 | // Graph 4 | // 5 | // Created by Rob Napier on 7/6/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GraphAppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch08/ErrorRecovery/ErrorRecovery/RNErrorManager.h: -------------------------------------------------------------------------------- 1 | // 2 | // RNErrorManager.h 3 | // 4 | // Singleton factory for error-handling UIActionSheets 5 | // 6 | 7 | #import 8 | 9 | @interface RNErrorManager : NSObject 10 | + (RNErrorManager *)sharedManager; 11 | - (UIActionSheet *)actionSheetForError:(NSError *)error; 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ch09/SimpleGCD/SimpleGCD/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // SimpleGCD 4 | // 5 | // Created by Rob Napier on 8/15/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch16/iHotelApp/iHotelApp/RESTRequest.h: -------------------------------------------------------------------------------- 1 | // 2 | // RESTRequest.h 3 | // iHotelApp 4 | // 5 | 6 | #import 7 | #import "ASIFormDataRequest.h" 8 | 9 | #import "RESTError.h" 10 | 11 | @interface RESTRequest : ASIFormDataRequest 12 | 13 | @property (nonatomic, strong) RESTError *restError; 14 | 15 | -(NSMutableDictionary*) responseDictionary; 16 | @end 17 | -------------------------------------------------------------------------------- /ch18/CurvyText/CurvyText/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // CurvyText 4 | // 5 | // Created by Rob Napier on 8/28/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch06/BlurryText/BlurryText/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // BlurryText 4 | // 5 | // Created by Rob Napier on 9/18/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch07/Box/Box/Box-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'Box' target in the 'Box' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch07/Layers/Layers/LayersAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // LayersAppDelegate.h 3 | // Layers 4 | // 5 | // Created by Rob Napier on 7/16/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface LayersAppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch15/KVC/KVC/KVC-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'KVC' target in the 'KVC' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch15/KVO/KVO/KVO-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'KVO' target in the 'KVO' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch18/AutoReturn/AutoReturn/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // AutoReturn 4 | // 5 | // Created by Rob Napier on 8/23/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch06/TimeConsuming/TimeConsuming/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // TimeConsuming 4 | // 5 | // Created by Rob Napier on 6/27/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch07/Box/Box.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/xcdebugger/Expressions.xcexplist: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /ch18/SimpleLayout/SimpleLayout/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // SimpleLayout 4 | // 5 | // Created by Rob Napier on 8/25/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch06/Drawing/Drawing/DrawingAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // DrawingAppDelegate.h 3 | // Drawing 4 | // 5 | // Created by Rob Napier on 6/28/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface DrawingAppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch06/Graph/Graph/Graph-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'Graph' target in the 'Graph' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch06/Layer/Layer/Layer-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'Layer' target in the 'Layer' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch06/Paths/Paths/Paths-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'Paths' target in the 'Paths' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch07/Actions/Actions/ActionsAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // ActionsAppDelegate.h 3 | // Actions 4 | // 5 | // Created by Rob Napier on 7/17/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ActionsAppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch09/SimpleThread/SimpleThread/STAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // STAppDelegate.h 3 | // SimpleThread 4 | // 5 | // Created by Rob Napier on 8/12/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface STAppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch10/iHotelApp/iHotelApp/RESTRequest.h: -------------------------------------------------------------------------------- 1 | // 2 | // RESTRequest.h 3 | // iHotelApp 4 | // 5 | 6 | #import 7 | #import "ASIFormDataRequest.h" 8 | 9 | #import "RESTError.h" 10 | 11 | @interface RESTRequest : ASIFormDataRequest { 12 | 13 | } 14 | 15 | @property (nonatomic, strong) RESTError *restError; 16 | 17 | -(NSMutableDictionary*) responseDictionary; 18 | @end 19 | -------------------------------------------------------------------------------- /ch15/KVC-Collection/KVC-Collection/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // KVC-Collection 4 | // 5 | // Created by Rob Napier on 9/12/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch17/iHotelApp/iHotelApp/RESTRequest.h: -------------------------------------------------------------------------------- 1 | // 2 | // RESTRequest.h 3 | // iHotelApp 4 | // 5 | 6 | #import 7 | #import "ASIFormDataRequest.h" 8 | 9 | #import "RESTError.h" 10 | 11 | @interface RESTRequest : ASIFormDataRequest { 12 | 13 | } 14 | 15 | @property (nonatomic, strong) RESTError *restError; 16 | 17 | -(NSMutableDictionary*) responseDictionary; 18 | @end 19 | -------------------------------------------------------------------------------- /ch20/ISASwizzle/MYNotificationCenter.h: -------------------------------------------------------------------------------- 1 | // 2 | // MYNotificationCenter.h 3 | // ISASwizzle 4 | // 5 | // Created by Rob Napier on 6/8/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface MYNotificationCenter : NSNotificationCenter 12 | // You MUST NOT define any ivars or synthesized properties here. 13 | @end 14 | -------------------------------------------------------------------------------- /ch07/Layers/Layers/Layers-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'Layers' target in the 'Layers' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch09/SimpleOperation/SimpleOperation/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // SimpleOperation 4 | // 5 | // Created by Rob Napier on 8/15/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch17/iHotelApp/iHotelApp/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // iHotelApp 4 | // 5 | // Created by Mugunth on 25/05/11. 6 | // Copyright 2011 Steinlogic. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | int main(int argc, char *argv[]) 12 | { 13 | @autoreleasepool { 14 | int retVal = UIApplicationMain(argc, argv, nil, nil); 15 | return retVal; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /ch20/Person/Person/Person-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'Person' target in the 'Person' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_3_0 8 | #warning "This project uses features only available in iOS SDK 3.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch06/Drawing/Drawing/Drawing-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'Drawing' target in the 'Drawing' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch07/Actions/Actions/Actions-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'Actions' target in the 'Actions' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch18/AutoReturn/AutoReturn/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // AutoReturn 4 | // 5 | // Created by Rob Napier on 8/23/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | @property (strong, nonatomic) IBOutlet UILabel *outputLabel; 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /ch18/Columns/Columns/Columns-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'Columns' target in the 'Columns' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch20/Runtime/Runtime/Runtime-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'Runtime' target in the 'Runtime' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_3_0 8 | #warning "This project uses features only available in iOS SDK 3.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch03/AssocRef/AssocRef/AssocRef-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'AssocRef' target in the 'AssocRef' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch03/AssocRef/AssocRef/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // AssocRef 4 | // 5 | // Created by Rob Napier on 9/14/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | @property (strong, nonatomic) IBOutlet UILabel *buttonLabel; 13 | - (IBAction)doSomething:(id)sender; 14 | @end 15 | -------------------------------------------------------------------------------- /ch04/ObserverTrampoline/ObserverTrampoline/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // ObserverTrampoline 4 | // 5 | // Created by Rob Napier on 9/7/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch06/Transforms/Transforms/TransformsAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // TransformsAppDelegate.h 3 | // Transforms 4 | // 5 | // Created by Rob Napier on 6/29/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface TransformsAppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch07/Decoration/Decoration/DecorationAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // DecorationAppDelegate.h 3 | // Decoration 4 | // 5 | // Created by Rob Napier on 7/20/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface DecorationAppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch11/Connection/Connection/ConnectionAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // ConnectionAppDelegate.h 3 | // Connection 4 | // 5 | // Created by Rob Napier on 8/1/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ConnectionAppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch11/CryptPic/CryptPic/CryptPic-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'CryptPic' target in the 'CryptPic' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch03/Flyweight/Flyweight/Flyweight-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'Flyweight' target in the 'Flyweight' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch04/ObserverTrampoline/RNMainThreadTrampoline.h: -------------------------------------------------------------------------------- 1 | // 2 | // MainThreadTrampoline.h 3 | // 4 | // 5 | // Created by Rob Napier on 9/8/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface RNMainThreadTrampoline : NSObject 12 | @property (nonatomic, readwrite, strong) id target; 13 | - (id)initWithTarget:(id)aTarget; 14 | @end 15 | -------------------------------------------------------------------------------- /ch06/BlurryText/BlurryText/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // BlurryText 4 | // 5 | // Created by Rob Napier on 9/18/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | @property (strong, nonatomic) IBOutlet UILabel *label; 13 | - (IBAction)toggleBlur:(id)sender; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch09/SimpleGCD/SimpleGCD/SimpleGCD-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'SimpleGCD' target in the 'SimpleGCD' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch15/KVC-Collection/RootViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // Chapter13_KVC_CollectionViewController.h 3 | // Chapter13-KVC-Collection 4 | // 5 | // 6 | 7 | #import 8 | 9 | @interface RootViewController : UIViewController 10 | 11 | @property (nonatomic, strong) IBOutlet UILabel *countLabel; 12 | @property (nonatomic, strong) IBOutlet UILabel *entryLabel; 13 | 14 | - (IBAction)performAdd; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /ch18/CurvyText/CurvyText/CurvyText-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'CurvyText' target in the 'CurvyText' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch04/ObserverTrampoline/ObserverTrampoline/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // ObserverTrampoline 4 | // 5 | // Created by Rob Napier on 9/7/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class RNObserverManager; 12 | @interface ViewController : UIViewController 13 | @property (nonatomic, strong) id observerManager; 14 | @end 15 | -------------------------------------------------------------------------------- /ch06/BlurryText/BlurryText/BlurryText-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'BlurryText' target in the 'BlurryText' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch06/Transforms/Transforms/Transforms-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'Transforms' target in the 'Transforms' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch07/Decoration/Decoration/Decoration-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'Decoration' target in the 'Decoration' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch07/ViewAnimation/ViewAnimation/ViewAnimationViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewAnimationViewController.h 3 | // ViewAnimation 4 | // 5 | // Created by Rob Napier on 7/13/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewAnimationViewController : UIViewController 12 | @property (nonatomic, readwrite, strong) UIView *circleView; 13 | @end 14 | -------------------------------------------------------------------------------- /ch11/Connection/Connection/Connection-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'Connection' target in the 'Connection' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch18/AutoReturn/AutoReturn/AutoReturn-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'AutoReturn' target in the 'AutoReturn' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch20/ISASwizzle/ISASwizzle/ISASwizzle-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'ISASwizzle' target in the 'ISASwizzle' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_3_0 8 | #warning "This project uses features only available in iOS SDK 3.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch07/Box/Box/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // Box 4 | // 5 | // Created by Rob Napier on 7/19/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "BoxAppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([BoxAppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch07/BoxTransform/BoxTransform/BoxTransformAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // BoxTransformAppDelegate.h 3 | // BoxTransform 4 | // 5 | // Created by Rob Napier on 7/20/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface BoxTransformAppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch11/FileExplorer/FileExplorer/FileExplorerAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // FileExplorerAppDelegate.h 3 | // FileExplorer 4 | // 5 | // Created by Rob Napier on 7/30/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface FileExplorerAppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch15/KVC/KVC/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // KVC 4 | // 5 | // Created by Rob Napier on 9/12/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch15/KVO/KVO/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // KVO 4 | // 5 | // Created by Rob Napier on 9/12/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch17/iHotelApp/iHotelApp/AppCache.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppCache.h 3 | // iHotelApp 4 | // 5 | 6 | #import 7 | 8 | @interface AppCache : NSObject { 9 | 10 | } 11 | 12 | +(NSString*) cacheDirectory; 13 | +(void) clearCache; 14 | +(NSString*) appVersion; 15 | 16 | +(void) cacheMenuItems:(NSMutableArray*) menuItems; 17 | +(NSMutableArray*) getCachedMenuItems; 18 | +(BOOL) isMenuItemsStale; 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /ch06/Layer/Layer/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // Layer 4 | // 5 | // Created by Rob Napier on 9/18/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch06/Paths/Paths/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // Paths 4 | // 5 | // Created by Rob Napier on 9/18/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch07/BoxTransform/BoxTransform/BoxTransform-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'BoxTransform' target in the 'BoxTransform' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch07/ViewAnimation/ViewAnimation/ViewAnimationAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewAnimationAppDelegate.h 3 | // ViewAnimation 4 | // 5 | // Created by Rob Napier on 7/13/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewAnimationAppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch08/ErrorRecovery/ErrorRecovery/ErrorRecoveryAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // ErrorRecoveryAppDelegate.h 3 | // ErrorRecovery 4 | // 5 | // Created by Rob Napier on 7/25/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ErrorRecoveryAppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch09/SimpleThread/SimpleThread/SimpleThread-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'SimpleThread' target in the 'SimpleThread' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch11/FileExplorer/FileExplorer/FileExplorer-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'FileExplorer' target in the 'FileExplorer' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch15/KVC/KVC/KVCTableViewCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // KVCTableViewCell.h 3 | // 4 | 5 | #import 6 | 7 | @interface KVCTableViewCell : UITableViewCell 8 | 9 | - (id)initWithReuseIdentifier:(NSString*)identifier; 10 | 11 | // Object to display. 12 | @property (nonatomic, readwrite, strong) id target; 13 | 14 | // Name of property of object to display 15 | @property (nonatomic, readwrite, copy) NSString *property; 16 | @end 17 | -------------------------------------------------------------------------------- /ch18/SimpleLayout/SimpleLayout/SimpleLayout-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'SimpleLayout' target in the 'SimpleLayout' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch06/TimeConsuming/TimeConsuming/TimeConsuming-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'TimeConsuming' target in the 'TimeConsuming' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch07/LayerAnimation/LayerAnimation/LayerAnimationAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // LayerAnimationAppDelegate.h 3 | // LayerAnimation 4 | // 5 | // Created by Rob Napier on 7/17/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface LayerAnimationAppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ch07/ViewAnimation/ViewAnimation/ViewAnimation-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'ViewAnimation' target in the 'ViewAnimation' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch08/ErrorRecovery/ErrorRecovery/ErrorRecovery-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'ErrorRecovery' target in the 'ErrorRecovery' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch18/Columns/Columns/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // Columns 4 | // 5 | // Created by Rob Napier on 8/26/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch20/MethodSwizzle/MethodSwizzle/MethodSwizzle-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'MethodSwizzle' target in the 'MethodSwizzle' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_3_0 8 | #warning "This project uses features only available in iOS SDK 3.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch03/AssocRef/AssocRef/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // AssocRef 4 | // 5 | // Created by Rob Napier on 9/14/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch06/TimeConsuming/TimeConsuming/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // TimeConsuming 4 | // 5 | // Created by Rob Napier on 9/17/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | @property (nonatomic, strong) IBOutlet UIActivityIndicatorView *activity; 13 | - (IBAction)doSomething:(id)sender; 14 | @end 15 | -------------------------------------------------------------------------------- /ch07/LayerAnimation/LayerAnimation/LayerAnimation-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'LayerAnimation' target in the 'LayerAnimation' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch07/Layers/Layers/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // Layers 4 | // 5 | // Created by Rob Napier on 7/16/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "LayersAppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([LayersAppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch15/KVC-Collection/KVC-Collection/KVC-Collection-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'KVC-Collection' target in the 'KVC-Collection' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch19/CoreFoundation/CoreFoundation/CoreFoundation-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'CoreFoundation' target in the 'CoreFoundation' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_3_0 8 | #warning "This project uses features only available in iOS SDK 3.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch03/Flyweight/Person.h: -------------------------------------------------------------------------------- 1 | // 2 | // Person.h 3 | // Flyweight 4 | // 5 | // Created by Rob Napier on 9/14/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface Person : NSObject 12 | @property (readonly, copy) NSString *identifier; 13 | @property (readwrite, copy) NSString *name; 14 | 15 | - (Person *)initWithIdentifier:(NSString *)anIdentifier; 16 | @end 17 | -------------------------------------------------------------------------------- /ch05/InlineEditingExample/InlineEditingExample/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // InlineEditingExample 4 | // 5 | // Created by Mugunth Kumar M on 30/8/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | int main(int argc, char *argv[]) 12 | { 13 | @autoreleasepool { 14 | int retVal = UIApplicationMain(argc, argv, nil, nil); 15 | return retVal; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /ch05/TableViewPerformance/TableViewPerformance/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // TableViewPerformance 4 | // 5 | // Created by Mugunth Kumar M on 23/8/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | int main(int argc, char *argv[]) 12 | { 13 | @autoreleasepool { 14 | int retVal = UIApplicationMain(argc, argv, nil, nil); 15 | return retVal; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /ch06/BlurryText/BlurryText/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // BlurryText 4 | // 5 | // Created by Rob Napier on 9/18/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch07/Actions/Actions/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // Actions 4 | // 5 | // Created by Rob Napier on 7/17/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "ActionsAppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([ActionsAppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch09/SimpleGCD/SimpleGCD/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // SimpleGCD 4 | // 5 | // Created by Rob Napier on 8/15/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch09/SimpleOperation/SimpleOperation/SimpleOperation-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'SimpleOperation' target in the 'SimpleOperation' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch09/SimpleThread/SimpleThread/SimpleCounterThread.m: -------------------------------------------------------------------------------- 1 | // 2 | // SimpleCounterThread.m 3 | // SimpleThread 4 | // 5 | // Created by Rob Napier on 8/14/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import "SimpleCounterThread.h" 10 | 11 | @implementation SimpleCounterThread 12 | 13 | - (void)processThread { 14 | [NSThread sleepForTimeInterval:1]; 15 | [self updateDelegate]; 16 | } 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /ch11/CryptPic/CryptPic/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // CryptPic 4 | // 5 | // Created by Rob Napier on 8/9/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "CPAppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([CPAppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch18/AutoReturn/AutoReturn/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // AutoReturn 4 | // 5 | // Created by Rob Napier on 8/23/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch18/CurvyText/CurvyText/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // CurvyText 4 | // 5 | // Created by Rob Napier on 8/28/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch16/UIAlertViewWithBlocks/UIAlertViewWithBlocks/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // UIAlertViewWithBlocks 4 | // 5 | // Created by Mugunth Kumar M on 6/8/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | int main(int argc, char *argv[]) 12 | { 13 | @autoreleasepool { 14 | int retVal = UIApplicationMain(argc, argv, nil, nil); 15 | return retVal; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /ch18/SimpleLayout/SimpleLayout/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // SimpleLayout 4 | // 5 | // Created by Rob Napier on 8/25/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch06/TimeConsuming/TimeConsuming/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // TimeConsuming 4 | // 5 | // Created by Rob Napier on 9/17/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch09/SimpleThread/SimpleThread/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // SimpleThread 4 | // 5 | // Created by Rob Napier on 8/12/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "STAppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([STAppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch10/iHotelApp/iHotelApp/iHotelApp-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'iHotelApp' target in the 'iHotelApp' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iPhone SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #import "JSONKit.h" 15 | #endif 16 | -------------------------------------------------------------------------------- /ch16/iHotelApp/iHotelApp/iHotelApp-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'iHotelApp' target in the 'iHotelApp' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iPhone SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #import "JSONKit.h" 15 | #endif 16 | -------------------------------------------------------------------------------- /ch17/iHotelApp/iHotelApp/iHotelApp-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'iHotelApp' target in the 'iHotelApp' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_3_0 8 | #warning "This project uses features only available in iPhone SDK 3.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #import "JSONKit.h" 15 | #endif 16 | -------------------------------------------------------------------------------- /ch04/ObserverTrampoline/ObserverTrampoline/ObserverTrampoline-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'ObserverTrampoline' target in the 'ObserverTrampoline' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iOS SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch05/NonRepeatingCellsExample/NonRepeatingCellsExample/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // NonRepeatingCellsExample 4 | // 5 | // Created by Mugunth Kumar M on 23/8/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | int main(int argc, char *argv[]) 12 | { 13 | @autoreleasepool { 14 | int retVal = UIApplicationMain(argc, argv, nil, nil); 15 | return retVal; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /ch07/Decoration/Decoration/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // Decoration 4 | // 5 | // Created by Rob Napier on 7/20/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "DecorationAppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([DecorationAppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch09/SimpleOperation/SimpleOperation/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // SimpleOperation 4 | // 5 | // Created by Rob Napier on 8/15/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch11/Connection/Connection/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // Connection 4 | // 5 | // Created by Rob Napier on 8/1/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "ConnectionAppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([ConnectionAppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch15/KVC-Collection/KVC-Collection/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // KVC-Collection 4 | // 5 | // Created by Rob Napier on 9/12/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch05/InfiniteScrollingExample/InfiniteScrollingExample/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // PullToRefreshTableViewExample 4 | // 5 | // Created by Mugunth Kumar M on 23/8/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | int main(int argc, char *argv[]) 12 | { 13 | @autoreleasepool { 14 | int retVal = UIApplicationMain(argc, argv, nil, nil); 15 | return retVal; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /ch11/Connection/Connection/ConnectionViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ConnectionViewController.h 3 | // Connection 4 | // 5 | // Created by Rob Napier on 8/1/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ConnectionViewController : UIViewController 12 | @property (nonatomic, readwrite, strong) NSURLConnection *connection; 13 | @end 14 | -------------------------------------------------------------------------------- /ch04/ObserverTrampoline/ObserverTrampoline/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // ObserverTrampoline 4 | // 5 | // Created by Rob Napier on 9/7/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch07/BoxTransform/BoxTransform/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // BoxTransform 4 | // 5 | // Created by Rob Napier on 7/20/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "BoxTransformAppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([BoxTransformAppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch11/FileExplorer/FileExplorer/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // FileExplorer 4 | // 5 | // Created by Rob Napier on 7/30/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "FileExplorerAppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([FileExplorerAppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch05/PullToRefreshTableViewExample/PullToRefreshTableViewExample/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // PullToRefreshTableViewExample 4 | // 5 | // Created by Mugunth Kumar M on 23/8/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | int main(int argc, char *argv[]) 12 | { 13 | @autoreleasepool { 14 | int retVal = UIApplicationMain(argc, argv, nil, nil); 15 | return retVal; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /ch07/ViewAnimation/ViewAnimation/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // ViewAnimation 4 | // 5 | // Created by Rob Napier on 7/13/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "ViewAnimationAppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([ViewAnimationAppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch08/ErrorRecovery/ErrorRecovery/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // ErrorRecovery 4 | // 5 | // Created by Rob Napier on 7/25/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "ErrorRecoveryAppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([ErrorRecoveryAppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch11/FileExplorer/FileExplorer/DirectoryViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // DirectoryViewController.h 3 | // FileExplorer 4 | // 5 | // Created by Rob Napier on 7/30/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface DirectoryViewController : UITableViewController 12 | 13 | @property (nonatomic, readwrite, strong) NSString *path; 14 | @property (nonatomic, readwrite, strong) NSArray *contents; 15 | @end 16 | -------------------------------------------------------------------------------- /ch05/InlineEditingExample/InlineEditingExample/InlineEditingExample-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'InlineEditingExample' target in the 'InlineEditingExample' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_3_0 8 | #warning "This project uses features only available in iPhone SDK 3.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch05/TableViewPerformance/TableViewPerformance/TableViewPerformance-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'TableViewPerformance' target in the 'TableViewPerformance' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_5_0 8 | #warning "This project uses features only available in iPhone SDK 5.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch07/LayerAnimation/LayerAnimation/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // LayerAnimation 4 | // 5 | // Created by Rob Napier on 7/17/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "LayerAnimationAppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([LayerAnimationAppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ch09/SimpleOperation/SimpleOperation/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // SimpleOperation 4 | // 5 | // Created by Rob Napier on 8/15/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @property (strong, nonatomic) IBOutlet UILabel *label; 14 | @property (assign) NSUInteger count; 15 | @property (strong) NSOperationQueue *queue; 16 | @end 17 | -------------------------------------------------------------------------------- /ch10/iHotelApp/iHotelApp/Review.h: -------------------------------------------------------------------------------- 1 | // 2 | // Review.h 3 | // 4 | 5 | #import 6 | #import "JSONModel.h" 7 | 8 | @interface Review : JSONModel 9 | 10 | @property (nonatomic, strong) NSString *rating; 11 | @property (nonatomic, strong) NSString *reviewDate; 12 | @property (nonatomic, strong) NSString *reviewerName; 13 | @property (nonatomic, strong) NSString *reviewId; 14 | @property (nonatomic, strong) NSString *reviewText; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /ch16/iHotelApp/iHotelApp/Review.h: -------------------------------------------------------------------------------- 1 | // 2 | // Review.h 3 | // 4 | 5 | #import 6 | #import "JSONModel.h" 7 | 8 | @interface Review : JSONModel 9 | 10 | @property (nonatomic, strong) NSString *rating; 11 | @property (nonatomic, strong) NSString *reviewDate; 12 | @property (nonatomic, strong) NSString *reviewerName; 13 | @property (nonatomic, strong) NSString *reviewId; 14 | @property (nonatomic, strong) NSString *reviewText; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /ch17/iHotelApp/iHotelApp/Review.h: -------------------------------------------------------------------------------- 1 | // 2 | // Review.h 3 | // 4 | 5 | #import 6 | #import "JSONModel.h" 7 | 8 | @interface Review : JSONModel 9 | 10 | @property (nonatomic, strong) NSString *rating; 11 | @property (nonatomic, strong) NSString *reviewDate; 12 | @property (nonatomic, strong) NSString *reviewerName; 13 | @property (nonatomic, strong) NSString *reviewId; 14 | @property (nonatomic, strong) NSString *reviewText; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /ch06/Graph/Graph/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // Graph 4 | // 5 | // Created by Rob Napier on 7/6/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "GraphAppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | int retVal = 0; 16 | @autoreleasepool { 17 | retVal = UIApplicationMain(argc, argv, nil, NSStringFromClass([GraphAppDelegate class])); 18 | } 19 | return retVal; 20 | } 21 | -------------------------------------------------------------------------------- /ch16/UIAlertViewWithBlocks/UIAlertViewWithBlocks/UIAlertViewWithBlocks-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'UIAlertViewWithBlocks' target in the 'UIAlertViewWithBlocks' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_3_0 8 | #warning "This project uses features only available in iPhone SDK 3.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch05/InlineEditingExample/InlineEditingExample/InlineEditingExampleViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // InlineEditingExampleViewController.h 3 | // InlineEditingExample 4 | // 5 | // Created by Mugunth Kumar M on 30/8/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface InlineEditingExampleViewController : UITableViewController 12 | 13 | @property (nonatomic, strong) NSMutableArray *data; 14 | @end 15 | -------------------------------------------------------------------------------- /ch06/Drawing/Drawing/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // Drawing 4 | // 5 | // Created by Rob Napier on 6/28/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "DrawingAppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | int retVal = 0; 16 | @autoreleasepool { 17 | retVal = UIApplicationMain(argc, argv, nil, NSStringFromClass([DrawingAppDelegate class])); 18 | } 19 | return retVal; 20 | } 21 | -------------------------------------------------------------------------------- /ch05/NonRepeatingCellsExample/NonRepeatingCellsExample/NonRepeatingCellsExample-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'NonRepeatingCellsExample' target in the 'NonRepeatingCellsExample' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_3_0 8 | #warning "This project uses features only available in iPhone SDK 3.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch07/ViewAnimation/ViewAnimation/CircleView.m: -------------------------------------------------------------------------------- 1 | // 2 | // CircleView.m 3 | // ViewAnimation 4 | // 5 | 6 | #import "CircleView.h" 7 | 8 | @implementation CircleView 9 | 10 | - (id)initWithFrame:(CGRect)frame { 11 | self = [super initWithFrame:frame]; 12 | if (self) { 13 | self.opaque = NO; 14 | } 15 | return self; 16 | } 17 | 18 | - (void)drawRect:(CGRect)rect { 19 | [[UIColor redColor] setFill]; 20 | [[UIBezierPath bezierPathWithOvalInRect:self.bounds] fill]; 21 | } 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /ch09/SimpleGCD/SimpleGCD/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // SimpleGCD 4 | // 5 | // Created by Rob Napier on 8/15/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @property (strong, nonatomic) IBOutlet UILabel *label; 14 | @property (assign) NSUInteger count; 15 | @property (assign) dispatch_queue_t queue; 16 | @property (assign) BOOL shouldRun; 17 | @end 18 | -------------------------------------------------------------------------------- /ch05/InfiniteScrollingExample/InfiniteScrollingExample/InfiniteScrollingExample-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'PullToRefreshTableViewExample' target in the 'PullToRefreshTableViewExample' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_3_0 8 | #warning "This project uses features only available in iPhone SDK 3.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch06/Transforms/Transforms/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // Transforms 4 | // 5 | // Created by Rob Napier on 6/29/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "TransformsAppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | int retVal = 0; 16 | @autoreleasepool { 17 | retVal = UIApplicationMain(argc, argv, nil, NSStringFromClass([TransformsAppDelegate class])); 18 | } 19 | return retVal; 20 | } 21 | -------------------------------------------------------------------------------- /ch03/Flyweight/Person.m: -------------------------------------------------------------------------------- 1 | // 2 | // Person.m 3 | // Flyweight 4 | // 5 | // Created by Rob Napier on 9/14/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import "Person.h" 10 | 11 | @implementation Person 12 | @synthesize identifier=identifier_; 13 | @synthesize name=name_; 14 | 15 | - (Person *)initWithIdentifier:(NSString *)anIdentifier { 16 | if ((self = [super init])) { 17 | identifier_ = [anIdentifier copy]; 18 | } 19 | return self; 20 | } 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /ch05/PullToRefreshTableViewExample/PullToRefreshTableViewExample/PullToRefreshTableViewExampleViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // PullToRefreshTableViewExampleViewController.h 3 | // PullToRefreshTableViewExample 4 | // 5 | // Created by Mugunth Kumar M on 23/8/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "PullToRefreshViewController.h" 11 | 12 | @interface PullToRefreshTableViewExampleViewController : PullToRefreshViewController 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /ch07/Box/Box.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEWorkspaceUserSettings_HasAskedToTakeAutomaticSnapshotBeforeSignificantChanges 6 | 7 | IDEWorkspaceUserSettings_SnapshotAutomaticallyBeforeSignificantChanges 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /ch05/InfiniteScrollingExample/InfiniteScrollingExample/InfiniteScrollingExampleViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // PullToRefreshTableViewExampleViewController.h 3 | // PullToRefreshTableViewExample 4 | // 5 | // Created by Mugunth Kumar M on 23/8/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "PullToRefreshViewController.h" 11 | 12 | @interface InfiniteScrollingExampleViewController : PullToRefreshViewController 13 | 14 | @property int pageCount; 15 | @end 16 | -------------------------------------------------------------------------------- /ch05/PullToRefreshTableViewExample/PullToRefreshTableViewExample/PullToRefreshTableViewExample-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'PullToRefreshTableViewExample' target in the 'PullToRefreshTableViewExample' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_3_0 8 | #warning "This project uses features only available in iPhone SDK 3.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /ch06/Graph/Graph.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEWorkspaceUserSettings_HasAskedToTakeAutomaticSnapshotBeforeSignificantChanges 6 | 7 | IDEWorkspaceUserSettings_SnapshotAutomaticallyBeforeSignificantChanges 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /ch20/Person/Person/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // Person 4 | // 5 | // Created by Rob Napier on 8/22/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "Person.h" 11 | 12 | int main(int argc, char *argv[]) { 13 | @autoreleasepool { 14 | Person *person = [[Person alloc] init]; 15 | [person setGivenName:@"Bob"]; 16 | [person setSurname:@"Jones"]; 17 | 18 | NSLog(@"%@ %@", [person givenName], [person surname]); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /ch17/iHotelApp/iHotelApp.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEWorkspaceUserSettings_HasAskedToTakeAutomaticSnapshotBeforeSignificantChanges 6 | 7 | IDEWorkspaceUserSettings_SnapshotAutomaticallyBeforeSignificantChanges 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /ch18/CurvyText/CurvyText.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEWorkspaceUserSettings_HasAskedToTakeAutomaticSnapshotBeforeSignificantChanges 6 | 7 | IDEWorkspaceUserSettings_SnapshotAutomaticallyBeforeSignificantChanges 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /ch03/Flyweight/Flyweight/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // Flyweight 4 | // 5 | // Created by Rob Napier on 9/14/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "Person.h" 11 | #import "Person+EmailAddress.h" 12 | 13 | int main(int argc, char *argv[]) { 14 | @autoreleasepool { 15 | Person *person = [[Person alloc] initWithIdentifier:@"someone"]; 16 | person.name = @"A Name"; 17 | person.emailAddress = @"myaddress@example.org"; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /ch11/CryptPic/CryptPic/CPDecryptViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // CPSecondViewController.h 3 | // CryptPic 4 | // 5 | 6 | #import 7 | #import "CPPasswordViewController.h" 8 | 9 | @interface CPDecryptViewController : UIViewController 10 | 11 | @property (strong, nonatomic) IBOutlet UIImageView *imageView; 12 | @property (strong, nonatomic) NSString *password; 13 | @property (strong, nonatomic) IBOutlet UIButton *decryptButton; 14 | 15 | - (IBAction)decrypt:(id)sender; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /ch06/TimeConsuming/TimeConsuming.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEWorkspaceUserSettings_HasAskedToTakeAutomaticSnapshotBeforeSignificantChanges 6 | 7 | IDEWorkspaceUserSettings_SnapshotAutomaticallyBeforeSignificantChanges 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /ch08/ErrorRecovery/ErrorRecovery.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEWorkspaceUserSettings_HasAskedToTakeAutomaticSnapshotBeforeSignificantChanges 6 | 7 | IDEWorkspaceUserSettings_SnapshotAutomaticallyBeforeSignificantChanges 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /ch09/SimpleThread/SimpleThread.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEWorkspaceUserSettings_HasAskedToTakeAutomaticSnapshotBeforeSignificantChanges 6 | 7 | IDEWorkspaceUserSettings_SnapshotAutomaticallyBeforeSignificantChanges 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /ch10/iHotelApp/iHotelApp/RESTError.h: -------------------------------------------------------------------------------- 1 | // 2 | // RESTError.h 3 | // iHotelApp 4 | // 5 | 6 | #import 7 | #define kRequestErrorDomain @"HTTP_ERROR" 8 | #define kBusinessErrorDomain @"BIZ_ERROR" // rename this appropriately 9 | 10 | @interface RESTError : NSError { 11 | 12 | } 13 | 14 | @property (nonatomic, strong) NSString *message; 15 | @property (nonatomic, weak) NSString *errorCode; 16 | 17 | - (NSString*) localizedOption; 18 | 19 | -(id) initWithDictionary:(NSMutableDictionary*) jsonObject; 20 | @end 21 | -------------------------------------------------------------------------------- /ch11/FileExplorer/FileExplorer.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEWorkspaceUserSettings_HasAskedToTakeAutomaticSnapshotBeforeSignificantChanges 6 | 7 | IDEWorkspaceUserSettings_SnapshotAutomaticallyBeforeSignificantChanges 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /ch16/iHotelApp/iHotelApp/RESTError.h: -------------------------------------------------------------------------------- 1 | // 2 | // RESTError.h 3 | // iHotelApp 4 | // 5 | 6 | #import 7 | #define kRequestErrorDomain @"HTTP_ERROR" 8 | #define kBusinessErrorDomain @"BIZ_ERROR" // rename this appropriately 9 | 10 | @interface RESTError : NSError { 11 | 12 | } 13 | 14 | @property (nonatomic, strong) NSString *message; 15 | @property (nonatomic, weak) NSString *errorCode; 16 | 17 | - (NSString*) localizedOption; 18 | 19 | -(id) initWithDictionary:(NSMutableDictionary*) jsonObject; 20 | @end 21 | -------------------------------------------------------------------------------- /ch05/TableViewPerformance/TableViewPerformance/CustomCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // CustomCell.h 3 | // TableViewPerformance 4 | // 5 | // Created by Mugunth Kumar M on 23/8/11. 6 | // 7 | 8 | #import 9 | 10 | @interface CustomCell : UITableViewCell 11 | 12 | @property (nonatomic, strong) IBOutlet UILabel *titleLabel; 13 | @property (nonatomic, strong) IBOutlet UILabel *subTitleLabel; 14 | @property (nonatomic, strong) IBOutlet UILabel *timeTitleLabel; 15 | @property (nonatomic, strong) IBOutlet UIImageView *thumbnailImage; 16 | @end 17 | -------------------------------------------------------------------------------- /ch09/SimpleThread/SimpleThread/STViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // STViewController.h 3 | // SimpleThread 4 | // 5 | // Created by Rob Napier on 8/12/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "CounterThread.h" 11 | 12 | @interface STViewController : UIViewController 13 | 14 | @property (strong, nonatomic) IBOutlet UILabel *label; 15 | @property (assign) NSUInteger count; 16 | @property (strong, nonatomic) CounterThread *thread; 17 | @end 18 | -------------------------------------------------------------------------------- /ch20/Person/Person/CacheProxy.h: -------------------------------------------------------------------------------- 1 | // 2 | // CacheProxy.h 3 | // Person 4 | // 5 | // Created by Rob Napier on 8/22/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface CacheProxy : NSProxy 12 | - (id)initWithObject:(id)anObject 13 | properties:(NSArray *)properties; 14 | @end 15 | 16 | @interface CacheProxy () 17 | @property (readonly, strong) id object; 18 | @property (readonly, strong) 19 | NSMutableDictionary *valueForProperty; 20 | @end 21 | -------------------------------------------------------------------------------- /ch04/ObserverTrampoline/ObserverTrampoline.xcodeproj/project.xcworkspace/xcuserdata/rnapier.xcuserdatad/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEWorkspaceUserSettings_HasAskedToTakeAutomaticSnapshotBeforeSignificantChanges 6 | 7 | IDEWorkspaceUserSettings_SnapshotAutomaticallyBeforeSignificantChanges 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /ch17/iHotelApp/iHotelApp/RESTError.h: -------------------------------------------------------------------------------- 1 | // 2 | // RESTError.h 3 | // iHotelApp 4 | // 5 | 6 | #import 7 | #define kRequestErrorDomain @"HTTP_ERROR" 8 | #define kBusinessErrorDomain @"BIZ_ERROR" // rename this appropriately 9 | 10 | @interface RESTError : NSError { 11 | 12 | } 13 | 14 | @property (nonatomic, strong) NSString *message; 15 | @property (nonatomic, unsafe_unretained) NSString *errorCode; 16 | 17 | - (NSString*) localizedOption; 18 | 19 | -(id) initWithDictionary:(NSMutableDictionary*) jsonObject; 20 | @end 21 | -------------------------------------------------------------------------------- /ch05/InlineEditingExample/InlineEditingExample.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEWorkspaceUserSettings_HasAskedToTakeAutomaticSnapshotBeforeSignificantChanges 6 | 7 | IDEWorkspaceUserSettings_SnapshotAutomaticallyBeforeSignificantChanges 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /ch05/TableViewPerformance/TableViewPerformance.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEWorkspaceUserSettings_HasAskedToTakeAutomaticSnapshotBeforeSignificantChanges 6 | 7 | IDEWorkspaceUserSettings_SnapshotAutomaticallyBeforeSignificantChanges 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /ch10/iHotelApp/iHotelApp/iHotelAppViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // iHotelAppViewController.h 3 | // iHotelApp 4 | // 5 | 6 | #import 7 | #import "RESTEngine.h" 8 | 9 | @interface iHotelAppViewController : UIViewController { 10 | 11 | } 12 | 13 | @property (nonatomic, strong) RESTRequest *menuRequest; 14 | 15 | -(IBAction) loginButtonTapped:(id) sender; 16 | -(IBAction) fetchMenuItems:(id) sender; 17 | 18 | -(IBAction) simulateServerError:(id) sender; 19 | -(IBAction) simulateRequestError:(id) sender; 20 | @end 21 | -------------------------------------------------------------------------------- /ch16/iHotelApp/iHotelApp/iHotelAppViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // iHotelAppViewController.h 3 | // iHotelApp 4 | // 5 | 6 | #import 7 | #import "RESTEngine.h" 8 | 9 | @interface iHotelAppViewController : UIViewController { 10 | 11 | } 12 | 13 | @property (nonatomic, strong) RESTRequest *menuRequest; 14 | 15 | -(IBAction) loginButtonTapped:(id) sender; 16 | -(IBAction) fetchMenuItems:(id) sender; 17 | 18 | -(IBAction) simulateServerError:(id) sender; 19 | -(IBAction) simulateRequestError:(id) sender; 20 | @end 21 | -------------------------------------------------------------------------------- /ch17/iHotelApp/iHotelApp/iHotelAppViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // iHotelAppViewController.h 3 | // iHotelApp 4 | // 5 | 6 | #import 7 | #import "RESTEngine.h" 8 | 9 | @interface iHotelAppViewController : UIViewController { 10 | 11 | } 12 | 13 | @property (nonatomic, strong) RESTRequest *menuRequest; 14 | 15 | -(IBAction) loginButtonTapped:(id) sender; 16 | -(IBAction) fetchMenuItems:(id) sender; 17 | 18 | -(IBAction) simulateServerError:(id) sender; 19 | -(IBAction) simulateRequestError:(id) sender; 20 | @end 21 | -------------------------------------------------------------------------------- /ch05/InfiniteScrollingExample/InfiniteScrollingExample.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEWorkspaceUserSettings_HasAskedToTakeAutomaticSnapshotBeforeSignificantChanges 6 | 7 | IDEWorkspaceUserSettings_SnapshotAutomaticallyBeforeSignificantChanges 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /ch05/NonRepeatingCellsExample/NonRepeatingCellsExample.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEWorkspaceUserSettings_HasAskedToTakeAutomaticSnapshotBeforeSignificantChanges 6 | 7 | IDEWorkspaceUserSettings_SnapshotAutomaticallyBeforeSignificantChanges 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /ch05/PullToRefreshTableViewExample/PullToRefreshTableViewExample.xcodeproj/project.xcworkspace/xcuserdata/mugunth.xcuserdatad/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEWorkspaceUserSettings_HasAskedToTakeAutomaticSnapshotBeforeSignificantChanges 6 | 7 | IDEWorkspaceUserSettings_SnapshotAutomaticallyBeforeSignificantChanges 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /ch05/TableViewPerformance/TableViewPerformance/TableViewPerformanceAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // TableViewPerformanceAppDelegate.h 3 | // TableViewPerformance 4 | // 5 | // Created by Mugunth Kumar M on 23/8/11. 6 | // 7 | 8 | #import 9 | 10 | @class TableViewPerformanceViewController; 11 | 12 | @interface TableViewPerformanceAppDelegate : NSObject 13 | 14 | @property (nonatomic, strong) IBOutlet UIWindow *window; 15 | 16 | @property (nonatomic, strong) IBOutlet TableViewPerformanceViewController *viewController; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /ch05/TableViewPerformance/TableViewPerformance/CustomDrawnCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // CustomDrawnCell.h 3 | // TableViewPerformance 4 | // 5 | // Created by Mugunth Kumar M on 25/8/11. 6 | // 7 | 8 | #import 9 | #import "ABTableViewCell.h" 10 | 11 | @interface CustomDrawnCell : ABTableViewCell { 12 | 13 | NSString *_title; 14 | NSString *_subTitle; 15 | NSString *_timeTitle; 16 | UIImage *_thumbnail; 17 | } 18 | 19 | - (void)setTitle:(NSString*) title subTitle:(NSString*) subTitle time:(NSString*) time thumbnail:(UIImage *)aThumbnail; 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /ch20/ISASwizzle/NSObject+SetClass.m: -------------------------------------------------------------------------------- 1 | // 2 | // NSObject+SetClass.m 3 | // ISASwizzle 4 | // 5 | // Created by Rob Napier on 6/8/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import "NSObject+SetClass.h" 10 | #import 11 | 12 | @implementation NSObject (SetClass) 13 | - (void)setClass:(Class)aClass { 14 | NSAssert( 15 | class_getInstanceSize([self class]) == 16 | class_getInstanceSize(aClass), 17 | @"Classes must be the same size to swizzle."); 18 | object_setClass(self, aClass); 19 | } 20 | @end 21 | -------------------------------------------------------------------------------- /ch20/ISASwizzle/MYNotificationCenter.m: -------------------------------------------------------------------------------- 1 | // 2 | // MYNotificationCenter.m 3 | // ISASwizzle 4 | // 5 | // Created by Rob Napier on 6/8/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import "MYNotificationCenter.h" 10 | 11 | @implementation MYNotificationCenter 12 | - (void)addObserver:(id)observer selector:(SEL)aSelector 13 | name:(NSString *)aName object:(id)anObject 14 | { 15 | NSLog(@"Adding observer: %@", observer); 16 | [super addObserver:observer selector:aSelector name:aName 17 | object:anObject]; 18 | } 19 | @end 20 | -------------------------------------------------------------------------------- /ch05/InlineEditingExample/InlineEditingExample/LabelTextFieldCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // LabelTextFieldCell.h 3 | // InlinteEditingExample 4 | // 5 | // Created by Mugunth Kumar on 20-Jun-10. 6 | // Copyright 2011 Steinlogic. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | 12 | @interface LabelTextFieldCell : UITableViewCell 13 | 14 | @property (nonatomic, strong) IBOutlet UILabel *labelText; 15 | @property (nonatomic, strong) IBOutlet UITextField *inputText; 16 | @property (nonatomic, copy) void (^onTextEntered)(NSString *enteredText); 17 | 18 | -(IBAction)textEditingDidEnd:(id)sender; 19 | @end 20 | -------------------------------------------------------------------------------- /ch06/TimeConsuming/TimeConsuming/AppDelegate.m: -------------------------------------------------------------------------------- 1 | // 2 | // TimeConsumingAppDelegate.m 3 | // TimeConsuming 4 | // 5 | // Created by Rob Napier on 6/27/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import "AppDelegate.h" 10 | 11 | @implementation AppDelegate 12 | 13 | @synthesize window = _window; 14 | 15 | - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 16 | { 17 | // Override point for customization after application launch. 18 | [self.window makeKeyAndVisible]; 19 | return YES; 20 | } 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /ch10/iHotelApp/iHotelApp/iHotelAppAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // iHotelAppAppDelegate.h 3 | // iHotelApp 4 | // 5 | 6 | #import 7 | #import "RESTEngine.h" 8 | #define AppDelegate ((iHotelAppAppDelegate *)[UIApplication sharedApplication].delegate) 9 | 10 | @class iHotelAppViewController; 11 | 12 | @interface iHotelAppAppDelegate : NSObject { 13 | 14 | } 15 | 16 | @property (nonatomic, strong) IBOutlet UIWindow *window; 17 | 18 | @property (nonatomic, strong) IBOutlet iHotelAppViewController *viewController; 19 | 20 | @property (nonatomic, strong) RESTEngine *engine; 21 | @end 22 | -------------------------------------------------------------------------------- /ch16/iHotelApp/iHotelApp/iHotelAppAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // iHotelAppAppDelegate.h 3 | // iHotelApp 4 | // 5 | 6 | #import 7 | #import "RESTEngine.h" 8 | #define AppDelegate ((iHotelAppAppDelegate *)[UIApplication sharedApplication].delegate) 9 | 10 | @class iHotelAppViewController; 11 | 12 | @interface iHotelAppAppDelegate : NSObject { 13 | 14 | } 15 | 16 | @property (nonatomic, strong) IBOutlet UIWindow *window; 17 | 18 | @property (nonatomic, strong) IBOutlet iHotelAppViewController *viewController; 19 | 20 | @property (nonatomic, strong) RESTEngine *engine; 21 | @end 22 | -------------------------------------------------------------------------------- /ch17/iHotelApp/iHotelApp/iHotelAppAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // iHotelAppAppDelegate.h 3 | // iHotelApp 4 | // 5 | 6 | #import 7 | #import "RESTEngine.h" 8 | #define AppDelegate ((iHotelAppAppDelegate *)[UIApplication sharedApplication].delegate) 9 | 10 | @class iHotelAppViewController; 11 | 12 | @interface iHotelAppAppDelegate : NSObject { 13 | 14 | } 15 | 16 | @property (nonatomic, strong) IBOutlet UIWindow *window; 17 | 18 | @property (nonatomic, strong) IBOutlet UINavigationController *navigationController; 19 | 20 | @property (nonatomic, strong) RESTEngine *engine; 21 | @end 22 | -------------------------------------------------------------------------------- /ch05/InlineEditingExample/InlineEditingExample/InlineEditingExampleAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // InlineEditingExampleAppDelegate.h 3 | // InlineEditingExample 4 | // 5 | // Created by Mugunth Kumar M on 30/8/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class InlineEditingExampleViewController; 12 | 13 | @interface InlineEditingExampleAppDelegate : NSObject 14 | 15 | @property (nonatomic, strong) IBOutlet UIWindow *window; 16 | 17 | @property (nonatomic, strong) IBOutlet InlineEditingExampleViewController *viewController; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /ch20/Runtime/Runtime/PrintObjectMethods.m: -------------------------------------------------------------------------------- 1 | // 2 | // PrintObjectMethods.m 3 | // Runtime 4 | // 5 | // Created by Rob Napier on 8/22/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import "PrintObjectMethods.h" 10 | 11 | void PrintObjectMethods() { 12 | unsigned int count = 0; 13 | Method *methods = class_copyMethodList([NSObject class], 14 | &count); 15 | for (unsigned int i = 0; i < count; ++i) { 16 | SEL sel = method_getName(methods[i]); 17 | const char *name = sel_getName(sel); 18 | printf("%s\n", name); 19 | } 20 | free(methods); 21 | } 22 | -------------------------------------------------------------------------------- /ch07/Box/Box.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | Box.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB15EBB513D622FD00977202 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch15/KVC/KVC.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | KVC.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB486F0E141E740B0088D73F 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch15/KVO/KVO.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | KVO.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FBC741E8141E75EB003A090A 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch06/Graph/Graph.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | Graph.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB423B2413C506530009C21A 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch06/Layer/Layer.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | Layer.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FBA9F09F1426A20C005748E3 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch06/Paths/Paths.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | Paths.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FBF62EBE1426A29000804CA5 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch07/Layers/Layers.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | Layers.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB49333E13D277D10047529C 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch13/Money/Money.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | Money.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FBABCC3B13CD251700C465E5 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch20/Person/Person.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | Person.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB0AB7E31403257F007F02E5 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch05/NonRepeatingCellsExample/NonRepeatingCellsExample/NonRepeatingCellsExampleAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // NonRepeatingCellsExampleAppDelegate.h 3 | // NonRepeatingCellsExample 4 | // 5 | // Created by Mugunth Kumar M on 23/8/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class NonRepeatingCellsExampleViewController; 12 | 13 | @interface NonRepeatingCellsExampleAppDelegate : NSObject 14 | 15 | @property (nonatomic, strong) IBOutlet UIWindow *window; 16 | 17 | @property (nonatomic, strong) IBOutlet NonRepeatingCellsExampleViewController *viewController; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /ch06/Drawing/Drawing.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | Drawing.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB35E2D113BA633B0040212F 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch07/Actions/Actions.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | Actions.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB1BD10F13D3B82D00836033 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch18/Columns/Columns.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | Columns.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB9469E4140834CF00F7A625 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch20/Runtime/Runtime.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | Runtime.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB0AB7941402E3E8007F02E5 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch03/AssocRef/AssocRef.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | AssocRef.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB2406AC14212AA30092C720 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch03/Flyweight/Flyweight.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | Flyweight.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB1D36AE14212CB600CD00C0 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch09/SimpleGCD/SimpleGCD.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | SimpleGCD.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FBE30CFA13F9BE6D002686F2 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch10/iHotelApp/iHotelApp.xcodeproj/xcuserdata/mugunth.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | iHotelApp.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | AB52940F138CDBDA00E5F2C6 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch11/CryptPic/CryptPic.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | CryptPic.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB9616CD13F168C1002129A8 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch16/iHotelApp/iHotelApp.xcodeproj/xcuserdata/mugunth.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | iHotelApp.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | AB52940F138CDBDA00E5F2C6 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch17/iHotelApp/iHotelApp.xcodeproj/xcuserdata/mugunth.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | iHotelApp.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | AB52940F138CDBDA00E5F2C6 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch18/CurvyText/CurvyText.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | CurvyText.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FBF0405A140ADF4400D1CD70 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch05/InfiniteScrollingExample/InfiniteScrollingExample/InfiniteScrollingExampleAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // PullToRefreshTableViewExampleAppDelegate.h 3 | // PullToRefreshTableViewExample 4 | // 5 | // Created by Mugunth Kumar M on 23/8/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class InfiniteScrollingExampleViewController; 12 | 13 | @interface InfiniteScrollingExampleAppDelegate : NSObject 14 | 15 | @property (nonatomic, strong) IBOutlet UIWindow *window; 16 | 17 | @property (nonatomic, strong) IBOutlet InfiniteScrollingExampleViewController *viewController; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /ch06/BlurryText/BlurryText.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | BlurryText.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB3A3CD81426A3DB00F2ED3E 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch06/Transforms/Transforms.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | Transforms.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB6BB8F113BBD1080023B4AD 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch07/Decoration/Decoration.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | Decoration.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB8FCA2313D7222A0051C3FA 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch11/Connection/Connection.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | Connection.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB11837713E7563F00E13D59 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch11/CryptPic/CryptPic/CPPasswordViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // CPPasswordViewController.h 3 | // CryptPic 4 | // 5 | 6 | #import 7 | 8 | @class CPPasswordViewController; 9 | 10 | @protocol CPPasswordViewControllerDelegate 11 | - (void)passwordViewController:(CPPasswordViewController *)vc didFinishWithPassword:(NSString *)password; 12 | @end 13 | 14 | @interface CPPasswordViewController : UIViewController 15 | 16 | @property (strong, nonatomic) IBOutlet UITextField *passwordTextField; 17 | @property (copy, nonatomic) NSString *password; 18 | @property (weak, nonatomic) id delegate; 19 | @end 20 | -------------------------------------------------------------------------------- /ch18/AutoReturn/AutoReturn.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | AutoReturn.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB3DF7221404045300E3E62B 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch20/ISASwizzle/ISASwizzle.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | ISASwizzle.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB0AB86614033EED007F02E5 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch07/BoxTransform/BoxTransform.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | BoxTransform.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB8FC9F513D68E7F0051C3FA 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch09/SimpleThread/SimpleThread.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | SimpleThread.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB9F9F9D13F6161100599046 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch11/FileExplorer/FileExplorer.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | FileExplorer.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB17A1C613E49E9200DCBA02 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch18/SimpleLayout/SimpleLayout.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | SimpleLayout.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB1EACF31406A22600B2D03F 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch20/Runtime/Runtime/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // Runtime 4 | // 5 | // Created by Rob Napier on 8/22/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | #import "PrintObjectMethods.h" 12 | #import "MyMsgSend.h" 13 | #import "FastCall.h" 14 | 15 | int main(int argc, char *argv[]) 16 | { 17 | @autoreleasepool { 18 | printf("PrintObjectMethods()\n"); 19 | PrintObjectMethods(); 20 | printf("\n\nRunMyMsgSend()\n"); 21 | RunMyMsgSend(); 22 | printf("\n\nFastCall()\n"); 23 | FastCall(); 24 | return 0; //UIApplicationMain(argc, argv, nil, nil); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /ch06/TimeConsuming/TimeConsuming.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | TimeConsuming.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB72131B1425125C00ED8BCD 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch07/LayerAnimation/LayerAnimation.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | LayerAnimation.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB1BD0E113D35C8F00836033 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch07/ViewAnimation/ViewAnimation.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | ViewAnimation.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FBA0554513CE43E100565C60 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch08/ErrorRecovery/ErrorRecovery.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | ErrorRecovery.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB32E8B513DDEBD80052DDFB 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch15/KVC-Collection/KVC-Collection.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | KVC-Collection.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB778FAA141E757A00652CF8 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch19/CoreFoundation/CoreFoundation.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | CoreFoundation.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FBC681E0141D173C00EDCC59 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch20/MethodSwizzle/MethodSwizzle.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | MethodSwizzle.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB0AB83614033939007F02E5 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch09/SimpleOperation/SimpleOperation.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | SimpleOperation.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FBE30D2413F9C700002686F2 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch04/ObserverTrampoline/ObserverTrampoline.xcodeproj/xcuserdata/rnapier.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | ObserverTrampoline.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | FB1000BA1417E41500431287 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch18/AutoReturn/AutoReturn/ViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.m 3 | // AutoReturn 4 | // 5 | // Created by Rob Napier on 8/23/11. 6 | // Copyright (c) 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import "ViewController.h" 10 | 11 | @implementation ViewController 12 | @synthesize outputLabel=outputLabel_; 13 | 14 | - (BOOL)textField:(UITextField *)textField 15 | shouldChangeCharactersInRange:(NSRange)range 16 | replacementString:(NSString *)string { 17 | if ([string isEqualToString:@"\n"]) { 18 | self.outputLabel.text = [textField text]; 19 | [textField resignFirstResponder]; 20 | return NO; 21 | } 22 | return YES; 23 | } 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /ch05/InlineEditingExample/InlineEditingExample.xcodeproj/xcuserdata/mugunth.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | InlineEditingExample.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | AB163ADA140CA22000EDF7D3 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /ch05/PullToRefreshTableViewExample/PullToRefreshTableViewExample/PullToRefreshTableViewExampleAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // PullToRefreshTableViewExampleAppDelegate.h 3 | // PullToRefreshTableViewExample 4 | // 5 | // Created by Mugunth Kumar M on 23/8/11. 6 | // Copyright 2011 __MyCompanyName__. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class PullToRefreshTableViewExampleViewController; 12 | 13 | @interface PullToRefreshTableViewExampleAppDelegate : NSObject 14 | 15 | @property (nonatomic, strong) IBOutlet UIWindow *window; 16 | 17 | @property (nonatomic, strong) IBOutlet PullToRefreshTableViewExampleViewController *viewController; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /ch05/TableViewPerformance/TableViewPerformance.xcodeproj/xcuserdata/mugunth.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | TableViewPerformance.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | ABBFBD4914035B4900A37E50 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | --------------------------------------------------------------------------------