├── .gitignore ├── Chapter 1 ├── Accepting User Text Input with UITextField │ ├── Accepting User Text Input with UITextField.xcodeproj │ │ └── project.pbxproj │ ├── Accepting User Text Input with UITextField │ │ ├── Accepting User Text Input with UITextField-Info.plist │ │ ├── Accepting User Text Input with UITextField-Prefix.pch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Accepting User Text Input with UITextFieldTests │ │ ├── Accepting User Text Input with UITextFieldTests-Info.plist │ │ ├── Accepting_User_Text_Input_with_UITextFieldTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Adding Buttons to Navigation Bars Using UIBarButtonItem │ ├── Adding Buttons to Navigation Bars Using UIBarButtonItem.xcodeproj │ │ └── project.pbxproj │ ├── Adding Buttons to Navigation Bars Using UIBarButtonItem │ │ ├── Adding Buttons to Navigation Bars Using UIBarButtonItem-Info.plist │ │ ├── Adding Buttons to Navigation Bars Using UIBarButtonItem-Prefix.pch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Adding Buttons to Navigation Bars Using UIBarButtonItemTests │ │ ├── Adding Buttons to Navigation Bars Using UIBarButtonItemTests-Info.plist │ │ ├── Adding_Buttons_to_Navigation_Bars_Using_UIBarButtonItemTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Adding Buttons to the User Interface with UIButton │ ├── Adding Buttons to the User Interface with UIButton.xcodeproj │ │ └── project.pbxproj │ ├── Adding Buttons to the User Interface with UIButton │ │ ├── Adding Buttons to the User Interface with UIButton-Info.plist │ │ ├── Adding Buttons to the User Interface with UIButton-Prefix.pch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Button.psd │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ ├── HighlightedBlueButton.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── HighlightedBlueButton.png │ │ │ │ └── HighlightedBlueButton@2x.png │ │ │ ├── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ │ └── NormalBlueButton.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── NormalBlueButton.png │ │ │ │ └── NormalBlueButton@2x.png │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Adding Buttons to the User Interface with UIButtonTests │ │ ├── Adding Buttons to the User Interface with UIButtonTests-Info.plist │ │ ├── Adding_Buttons_to_the_User_Interface_with_UIButtonTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Adding Object Subscripting Support to Your Own Classes │ ├── Adding Object Subscripting Support to Your Own Classes.xcodeproj │ │ └── project.pbxproj │ ├── Adding Object Subscripting Support to Your Own Classes │ │ ├── Adding Object Subscripting Support to Your Own Classes-Info.plist │ │ ├── Adding Object Subscripting Support to Your Own Classes-Prefix.pch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Person.h │ │ ├── Person.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Adding Object Subscripting Support to Your Own ClassesTests │ │ ├── Adding Object Subscripting Support to Your Own ClassesTests-Info.plist │ │ ├── Adding_Object_Subscripting_Support_to_Your_Own_ClassesTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Chapter 1-Introduction │ ├── Chapter 1-Introduction.xcodeproj │ │ └── project.pbxproj │ └── Chapter 1-Introduction │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Car.h │ │ ├── Chapter 1-Introduction-Info.plist │ │ ├── Chapter 1-Introduction-Prefix.pch │ │ ├── Default-568h@2x.png │ │ ├── Default.png │ │ ├── Default@2x.png │ │ ├── Jaguar.h │ │ ├── Jaguar.m │ │ ├── Person.h │ │ ├── Person.m │ │ ├── en.lproj │ │ └── InfoPlist.strings │ │ └── main.m ├── Constructing and Displaying Styled Texts │ ├── Constructing and Displaying Styled Texts.xcodeproj │ │ └── project.pbxproj │ ├── Constructing and Displaying Styled Texts │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Constructing and Displaying Styled Texts-Info.plist │ │ ├── Constructing and Displaying Styled Texts-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Constructing and Displaying Styled TextsTests │ │ ├── Constructing and Displaying Styled TextsTests-Info.plist │ │ ├── Constructing_and_Displaying_Styled_TextsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Creating Scrollable Content with UIScrollView │ ├── Creating Scrollable Content with UIScrollView.xcodeproj │ │ └── project.pbxproj │ ├── Creating Scrollable Content with UIScrollView │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Creating Scrollable Content with UIScrollView-Info.plist │ │ ├── Creating Scrollable Content with UIScrollView-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ ├── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ │ ├── MacBookAir.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── MacBookAir.png │ │ │ │ └── MacBookAir@2x.png │ │ │ ├── iPad.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── iPad.png │ │ │ │ └── iPad@2x.png │ │ │ └── iPhone.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── iPhone.png │ │ │ │ └── iPhone@2x.png │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Creating Scrollable Content with UIScrollViewTests │ │ ├── Creating Scrollable Content with UIScrollViewTests-Info.plist │ │ ├── Creating_Scrollable_Content_with_UIScrollViewTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Creating and Using Switches with UISwitch │ ├── Creating and Using Switches with UISwitch.xcodeproj │ │ └── project.pbxproj │ ├── Creating and Using Switches with UISwitch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Creating and Using Switches with UISwitch-Info.plist │ │ ├── Creating and Using Switches with UISwitch-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Creating and Using Switches with UISwitchTests │ │ ├── Creating and Using Switches with UISwitchTests-Info.plist │ │ ├── Creating_and_Using_Switches_with_UISwitchTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Customizing the UILabel │ ├── Customizing the UILabel.xcodeproj │ │ └── project.pbxproj │ ├── Customizing the UILabel │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Customizing the UILabel-Info.plist │ │ ├── Customizing the UILabel-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Customizing the UILabelTests │ │ ├── Customizing the UILabelTests-Info.plist │ │ ├── Customizing_the_UILabelTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Customizing the UISlider │ ├── Customizing the UISlider.xcodeproj │ │ └── project.pbxproj │ ├── Customizing the UISlider │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Customizing the UISlider-Info.plist │ │ ├── Customizing the UISlider-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ ├── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ │ ├── MaximumTrack.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── MaximumTrack.png │ │ │ │ └── MaximumTrack@2x.png │ │ │ ├── MaximumValue.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── MaximumValue.png │ │ │ │ └── MaximumValue@2x.png │ │ │ ├── MinimumTrack.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── MinimumTrack.png │ │ │ │ └── MinimumTrack@2x.png │ │ │ ├── MinimumValue.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── MinimumValue.png │ │ │ │ └── MinimumValue@2x.png │ │ │ └── Thumb.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Thumb.png │ │ │ │ └── Thumb@2x.png │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Customizing the UISliderTests │ │ ├── Customizing the UISliderTests-Info.plist │ │ ├── Customizing_the_UISliderTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Customizing the UISwitch │ ├── Customizing the UISwitch.xcodeproj │ │ └── project.pbxproj │ ├── Customizing the UISwitch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Customizing the UISwitch-Info.plist │ │ ├── Customizing the UISwitch-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ ├── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ │ ├── Off.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Off.png │ │ │ │ └── Off@2x.png │ │ │ └── On.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── On.png │ │ │ │ └── On@2x.png │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Customizing the UISwitchTests │ │ ├── Customizing the UISwitchTests-Info.plist │ │ ├── Customizing_the_UISwitchTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Displaying Alerts with UIAlertView │ ├── Displaying Alerts with UIAlertView.xcodeproj │ │ └── project.pbxproj │ ├── Displaying Alerts with UIAlertView │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Displaying Alerts with UIAlertView-Info.plist │ │ ├── Displaying Alerts with UIAlertView-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Displaying Alerts with UIAlertViewTests │ │ ├── Displaying Alerts with UIAlertViewTests-Info.plist │ │ ├── Displaying_Alerts_with_UIAlertViewTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Displaying Images with UIImageView │ ├── Displaying Images with UIImageView.xcodeproj │ │ └── project.pbxproj │ ├── Displaying Images with UIImageView │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Displaying Images with UIImageView-Info.plist │ │ ├── Displaying Images with UIImageView-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ ├── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ │ └── MacBookAir.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── MacBookAir.png │ │ │ │ └── MacBookAir@2x.png │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Displaying Images with UIImageViewTests │ │ ├── Displaying Images with UIImageViewTests-Info.plist │ │ ├── Displaying_Images_with_UIImageViewTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Displaying Long Lines of Text with UITextView │ ├── Displaying Long Lines of Text with UITextView.xcodeproj │ │ └── project.pbxproj │ ├── Displaying Long Lines of Text with UITextView │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Displaying Long Lines of Text with UITextView-Info.plist │ │ ├── Displaying Long Lines of Text with UITextView-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Displaying Long Lines of Text with UITextViewTests │ │ ├── Displaying Long Lines of Text with UITextViewTests-Info.plist │ │ ├── Displaying_Long_Lines_of_Text_with_UITextViewTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Displaying Popovers with UIPopoverController │ ├── Displaying Popovers with UIPopoverController.xcodeproj │ │ └── project.pbxproj │ ├── Displaying Popovers with UIPopoverController │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Displaying Popovers with UIPopoverController-Info.plist │ │ ├── Displaying Popovers with UIPopoverController-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── PopoverContentViewController.h │ │ ├── PopoverContentViewController.m │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Displaying Popovers with UIPopoverControllerTests │ │ ├── Displaying Popovers with UIPopoverControllerTests-Info.plist │ │ ├── Displaying_Popovers_with_UIPopoverControllerTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Displaying Progress with UIProgressView │ ├── Displaying Progress with UIProgressView.xcodeproj │ │ └── project.pbxproj │ ├── Displaying Progress with UIProgressView │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Displaying Progress with UIProgressView-Info.plist │ │ ├── Displaying Progress with UIProgressView-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Displaying Progress with UIProgressViewTests │ │ ├── Displaying Progress with UIProgressViewTests-Info.plist │ │ ├── Displaying_Progress_with_UIProgressViewTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Displaying Static Text with UILabel │ ├── Displaying Static Text with UILabel.xcodeproj │ │ └── project.pbxproj │ ├── Displaying Static Text with UILabel │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Displaying Static Text with UILabel-Info.plist │ │ ├── Displaying Static Text with UILabel-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Displaying Static Text with UILabelTests │ │ ├── Displaying Static Text with UILabelTests-Info.plist │ │ ├── Displaying_Static_Text_with_UILabelTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Displaying an Image on a Navigation Bar │ ├── Displaying an Image on a Navigation Bar.xcodeproj │ │ └── project.pbxproj │ ├── Displaying an Image on a Navigation Bar │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Displaying an Image on a Navigation Bar-Info.plist │ │ ├── Displaying an Image on a Navigation Bar-Prefix.pch │ │ ├── FirstViewController.h │ │ ├── FirstViewController.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ ├── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ │ └── Logo.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Logo.png │ │ │ │ └── Logo@2x.png │ │ ├── Logo.psd │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Displaying an Image on a Navigation BarTests │ │ ├── Displaying an Image on a Navigation BarTests-Info.plist │ │ ├── Displaying_an_Image_on_a_Navigation_BarTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Enabling Paging with UIPageViewController │ ├── Enabling Paging with UIPageViewController.xcodeproj │ │ └── project.pbxproj │ ├── Enabling Paging with UIPageViewController │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── DataViewController.h │ │ ├── DataViewController.m │ │ ├── Enabling Paging with UIPageViewController-Info.plist │ │ ├── Enabling Paging with UIPageViewController-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ModelController.h │ │ ├── ModelController.m │ │ ├── RootViewController.h │ │ ├── RootViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Enabling Paging with UIPageViewControllerTests │ │ ├── Enabling Paging with UIPageViewControllerTests-Info.plist │ │ ├── Enabling_Paging_with_UIPageViewControllerTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Grouping Compact Options with UISegmentedControl │ ├── Grouping Compact Options with UISegmentedControl.xcodeproj │ │ └── project.pbxproj │ ├── Grouping Compact Options with UISegmentedControl │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Grouping Compact Options with UISegmentedControl-Info.plist │ │ ├── Grouping Compact Options with UISegmentedControl-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ ├── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ │ └── iPad.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── iPad.png │ │ │ │ └── iPad@2x.png │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Grouping Compact Options with UISegmentedControlTests │ │ ├── Grouping Compact Options with UISegmentedControlTests-Info.plist │ │ ├── Grouping_Compact_Options_with_UISegmentedControlTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Implementing Navigation with UINavigationController │ ├── Implementing Navigation with UINavigationController.xcodeproj │ │ └── project.pbxproj │ ├── Implementing Navigation with UINavigationController │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── FirstViewController.h │ │ ├── FirstViewController.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Implementing Navigation with UINavigationController-Info.plist │ │ ├── Implementing Navigation with UINavigationController-Prefix.pch │ │ ├── SecondViewController.h │ │ ├── SecondViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Implementing Navigation with UINavigationControllerTests │ │ ├── Implementing Navigation with UINavigationControllerTests-Info.plist │ │ ├── Implementing_Navigation_with_UINavigationControllerTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Implementing Range Pickers with UISlider │ ├── Implementing Range Pickers with UISlider.xcodeproj │ │ └── project.pbxproj │ ├── Implementing Range Pickers with UISlider │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ ├── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ │ ├── ThumbHighlighted.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── ThumbHighlighted.png │ │ │ │ └── ThumbHighlighted@2x.png │ │ │ └── ThumbNormal.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── ThumbNormal.png │ │ │ │ └── ThumbNormal@2x.png │ │ ├── Implementing Range Pickers with UISlider-Info.plist │ │ ├── Implementing Range Pickers with UISlider-Prefix.pch │ │ ├── Thumb.psd │ │ ├── ThumbHighlighted.png │ │ ├── ThumbHighlighted@2x.png │ │ ├── ThumbNormal.png │ │ ├── ThumbNormal@2x.png │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Implementing Range Pickers with UISliderTests │ │ ├── Implementing Range Pickers with UISliderTests-Info.plist │ │ ├── Implementing_Range_Pickers_with_UISliderTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Loading Web Pages with UIWebView │ ├── Loading Web Pages with UIWebView.xcodeproj │ │ └── project.pbxproj │ ├── Loading Web Pages with UIWebView │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Loading Web Pages with UIWebView-Info.plist │ │ ├── Loading Web Pages with UIWebView-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Loading Web Pages with UIWebViewTests │ │ ├── Loading Web Pages with UIWebViewTests-Info.plist │ │ ├── Loading_Web_Pages_with_UIWebViewTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Manipulating a Navigation Controller’s Array of View Controllers │ ├── Manipulating a Navigation Controller’s Array of View Controllers.xcodeproj │ │ └── project.pbxproj │ ├── Manipulating a Navigation Controller’s Array of View Controllers │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── FirstViewController.h │ │ ├── FirstViewController.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Manipulating a Navigation Controller’s Array of View Controllers-Info.plist │ │ ├── Manipulating a Navigation Controller’s Array of View Controllers-Prefix.pch │ │ ├── SecondViewController.h │ │ ├── SecondViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Manipulating a Navigation Controller’s Array of View ControllersTests │ │ ├── Manipulating a Navigation Controller’s Array of View ControllersTests-Info.plist │ │ ├── Manipulating_a_Navigation_Controller_s_Array_of_View_ControllersTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Picking Date and Time with UIDatePicker │ ├── Picking Date and Time with UIDatePicker.xcodeproj │ │ └── project.pbxproj │ ├── Picking Date and Time with UIDatePicker │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Picking Date and Time with UIDatePicker-Info.plist │ │ ├── Picking Date and Time with UIDatePicker-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Picking Date and Time with UIDatePickerTests │ │ ├── Picking Date and Time with UIDatePickerTests-Info.plist │ │ ├── Picking_Date_and_Time_with_UIDatePickerTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Picking Values with UIPickerView │ ├── Picking Values with UIPickerView.xcodeproj │ │ └── project.pbxproj │ ├── Picking Values with UIPickerView │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Picking Values with UIPickerView-Info.plist │ │ ├── Picking Values with UIPickerView-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Picking Values with UIPickerViewTests │ │ ├── Picking Values with UIPickerViewTests-Info.plist │ │ ├── Picking_Values_with_UIPickerViewTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Presenting Custom Sharing Options with UIActivityViewController │ ├── Presenting Custom Sharing Options with UIActivityViewController.xcodeproj │ │ └── project.pbxproj │ ├── Presenting Custom Sharing Options with UIActivityViewController │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ ├── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ │ └── Reverse.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Reverse@2x~ipad.png │ │ │ │ ├── Reverse@2x~iphone.png │ │ │ │ ├── Reverse~ipad.png │ │ │ │ └── Reverse~iphone.png │ │ ├── Presenting Custom Sharing Options with UIActivityViewController-Info.plist │ │ ├── Presenting Custom Sharing Options with UIActivityViewController-Prefix.pch │ │ ├── Reverse.psd │ │ ├── StringReverserActivity.h │ │ ├── StringReverserActivity.m │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Presenting Custom Sharing Options with UIActivityViewControllerTests │ │ ├── Presenting Custom Sharing Options with UIActivityViewControllerTests-Info.plist │ │ ├── Presenting_Custom_Sharing_Options_with_UIActivityViewControllerTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Presenting Master-Detail Views with UISplitViewController │ ├── Presenting Master-Detail Views with UISplitViewController.xcodeproj │ │ └── project.pbxproj │ ├── Presenting Master-Detail Views with UISplitViewController │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── DetailViewController.h │ │ ├── DetailViewController.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── MasterViewController.h │ │ ├── MasterViewController.m │ │ ├── Presenting Master-Detail Views with UISplitViewController-Info.plist │ │ ├── Presenting Master-Detail Views with UISplitViewController-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Presenting Master-Detail Views with UISplitViewControllerTests │ │ ├── Presenting Master-Detail Views with UISplitViewControllerTests-Info.plist │ │ ├── Presenting_Master_Detail_Views_with_UISplitViewControllerTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Presenting Multiple View Controllers with UITabBarController │ ├── Presenting Multiple View Controllers with UITabBarController.xcodeproj │ │ └── project.pbxproj │ ├── Presenting Multiple View Controllers with UITabBarController │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── FirstViewController.h │ │ ├── FirstViewController.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ ├── FirstTab.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── FirstTab.png │ │ │ │ └── FirstTab@2x.png │ │ │ ├── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ │ └── SecondTab.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── SecondTab.png │ │ │ │ └── SecondTab@2x.png │ │ ├── Presenting Multiple View Controllers with UITabBarController-Info.plist │ │ ├── Presenting Multiple View Controllers with UITabBarController-Prefix.pch │ │ ├── SecondViewController.h │ │ ├── SecondViewController.m │ │ ├── TabIcons.psd │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Presenting Multiple View Controllers with UITabBarControllerTests │ │ ├── Presenting Multiple View Controllers with UITabBarControllerTests-Info.plist │ │ ├── Presenting_Multiple_View_Controllers_with_UITabBarControllerTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Presenting Sharing Options with UIActivityViewController │ ├── Presenting Sharing Options with UIActivityViewController.xcodeproj │ │ └── project.pbxproj │ ├── Presenting Sharing Options with UIActivityViewController │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Presenting Sharing Options with UIActivityViewController-Info.plist │ │ ├── Presenting Sharing Options with UIActivityViewController-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Presenting Sharing Options with UIActivityViewControllerTests │ │ ├── Presenting Sharing Options with UIActivityViewControllerTests-Info.plist │ │ ├── Presenting_Sharing_Options_with_UIActivityViewControllerTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings └── Presenting and Managing Views with UIViewController │ ├── Presenting and Managing Views with UIViewController.xcodeproj │ └── project.pbxproj │ ├── Presenting and Managing Views with UIViewController │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── Presenting and Managing Views with UIViewController-Info.plist │ ├── Presenting and Managing Views with UIViewController-Prefix.pch │ ├── ViewController.h │ ├── ViewController.m │ ├── ViewController.xib │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m │ └── Presenting and Managing Views with UIViewControllerTests │ ├── Presenting and Managing Views with UIViewControllerTests-Info.plist │ ├── Presenting_and_Managing_Views_with_UIViewControllerTests.m │ └── en.lproj │ └── InfoPlist.strings ├── Chapter 10 ├── Detecting Long Press Gestures │ ├── Detecting Long Press Gestures.xcodeproj │ │ └── project.pbxproj │ ├── Detecting Long Press Gestures │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Detecting Long Press Gestures-Info.plist │ │ ├── Detecting Long Press Gestures-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Detecting Long Press GesturesTests │ │ ├── Detecting Long Press GesturesTests-Info.plist │ │ ├── Detecting_Long_Press_GesturesTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Detecting Panning and Dragging Gestures │ ├── Detecting Panning and Dragging Gestures.xcodeproj │ │ └── project.pbxproj │ ├── Detecting Panning and Dragging Gestures │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Detecting Panning and Dragging Gestures-Info.plist │ │ ├── Detecting Panning and Dragging Gestures-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Detecting Panning and Dragging GesturesTests │ │ ├── Detecting Panning and Dragging GesturesTests-Info.plist │ │ ├── Detecting_Panning_and_Dragging_GesturesTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Detecting Pinch Gestures │ ├── Detecting Pinch Gestures.xcodeproj │ │ └── project.pbxproj │ ├── Detecting Pinch Gestures │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Detecting Pinch Gestures-Info.plist │ │ ├── Detecting Pinch Gestures-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Detecting Pinch GesturesTests │ │ ├── Detecting Pinch GesturesTests-Info.plist │ │ ├── Detecting_Pinch_GesturesTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Detecting Rotation Gestures │ ├── Detecting Rotation Gestures.xcodeproj │ │ └── project.pbxproj │ ├── Detecting Rotation Gestures │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Detecting Rotation Gestures-Info.plist │ │ ├── Detecting Rotation Gestures-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Detecting Rotation GesturesTests │ │ ├── Detecting Rotation GesturesTests-Info.plist │ │ ├── Detecting_Rotation_GesturesTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Detecting Swipe Gestures │ ├── Detecting Swipe Gestures.xcodeproj │ │ └── project.pbxproj │ ├── Detecting Swipe Gestures │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Detecting Swipe Gestures-Info.plist │ │ ├── Detecting Swipe Gestures-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Detecting Swipe GesturesTests │ │ ├── Detecting Swipe GesturesTests-Info.plist │ │ ├── Detecting_Swipe_GesturesTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Detecting Tap Gestures │ ├── Detecting Tap Gestures.xcodeproj │ │ └── project.pbxproj │ ├── Detecting Tap Gestures │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Detecting Tap Gestures-Info.plist │ │ ├── Detecting Tap Gestures-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Detecting Tap GesturesTests │ │ ├── Detecting Tap GesturesTests-Info.plist │ │ ├── Detecting_Tap_GesturesTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings └── Introduction to Gesture Recognizers │ ├── Introduction to Gesture Recognizers.xcodeproj │ └── project.pbxproj │ ├── Introduction to Gesture Recognizers │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ │ ├── Main_iPad.storyboard │ │ └── Main_iPhone.storyboard │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── Introduction to Gesture Recognizers-Info.plist │ ├── Introduction to Gesture Recognizers-Prefix.pch │ ├── ViewController.h │ ├── ViewController.m │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m │ └── Introduction to Gesture RecognizersTests │ ├── Introduction to Gesture RecognizersTests-Info.plist │ ├── Introduction_to_Gesture_RecognizersTests.m │ └── en.lproj │ └── InfoPlist.strings ├── Chapter 11 ├── Deserializing JSON into Arrays and Dictionaries │ ├── Deserializing JSON into Arrays and Dictionaries.xcodeproj │ │ └── project.pbxproj │ ├── Deserializing JSON into Arrays and Dictionaries │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Deserializing JSON into Arrays and Dictionaries-Info.plist │ │ ├── Deserializing JSON into Arrays and Dictionaries-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Deserializing JSON into Arrays and DictionariesTests │ │ ├── Deserializing JSON into Arrays and DictionariesTests-Info.plist │ │ ├── Deserializing_JSON_into_Arrays_and_DictionariesTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Downloading Asynchronously with NSURLConnection │ ├── Downloading Asynchronously with NSURLConnection.xcodeproj │ │ └── project.pbxproj │ ├── Downloading Asynchronously with NSURLConnection │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Downloading Asynchronously with NSURLConnection-Info.plist │ │ ├── Downloading Asynchronously with NSURLConnection-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Downloading Asynchronously with NSURLConnectionTests │ │ ├── Downloading Asynchronously with NSURLConnectionTests-Info.plist │ │ ├── Downloading_Asynchronously_with_NSURLConnectionTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Downloading Synchronously with NSURLConnection │ ├── Downloading Synchronously with NSURLConnection.xcodeproj │ │ └── project.pbxproj │ ├── Downloading Synchronously with NSURLConnection │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Downloading Synchronously with NSURLConnection-Info.plist │ │ ├── Downloading Synchronously with NSURLConnection-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Downloading Synchronously with NSURLConnectionTests │ │ ├── Downloading Synchronously with NSURLConnectionTests-Info.plist │ │ ├── Downloading_Synchronously_with_NSURLConnectionTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Handling Timeouts in Asynchronous Connections │ ├── Handling Timeouts in Asynchronous Connections.xcodeproj │ │ └── project.pbxproj │ ├── Handling Timeouts in Asynchronous Connections │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Handling Timeouts in Asynchronous Connections-Info.plist │ │ ├── Handling Timeouts in Asynchronous Connections-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Handling Timeouts in Asynchronous ConnectionsTests │ │ ├── Handling Timeouts in Asynchronous ConnectionsTests-Info.plist │ │ ├── Handling_Timeouts_in_Asynchronous_ConnectionsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Integrating Social Sharing into Your Apps │ ├── Integrating Social Sharing into Your Apps.xcodeproj │ │ └── project.pbxproj │ ├── Integrating Social Sharing into Your Apps │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ ├── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ │ └── MacBookAir.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── MacBookAir.png │ │ │ │ └── MacBookAir@2x.png │ │ ├── Integrating Social Sharing into Your Apps-Info.plist │ │ ├── Integrating Social Sharing into Your Apps-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Integrating Social Sharing into Your AppsTests │ │ ├── Integrating Social Sharing into Your AppsTests-Info.plist │ │ ├── Integrating_Social_Sharing_into_Your_AppsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Modifying a URL Request with NSMutableURLRequest │ ├── Modifying a URL Request with NSMutableURLRequest.xcodeproj │ │ └── project.pbxproj │ ├── Modifying a URL Request with NSMutableURLRequest │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Modifying a URL Request with NSMutableURLRequest-Info.plist │ │ ├── Modifying a URL Request with NSMutableURLRequest-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Modifying a URL Request with NSMutableURLRequestTests │ │ ├── Modifying a URL Request with NSMutableURLRequestTests-Info.plist │ │ ├── Modifying_a_URL_Request_with_NSMutableURLRequestTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Parsing XML with NSXMLParser │ ├── Parsing XML with NSXMLParser.xcodeproj │ │ └── project.pbxproj │ ├── Parsing XML with NSXMLParser │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── MyXML.xml │ │ ├── Parsing XML with NSXMLParser-Info.plist │ │ ├── Parsing XML with NSXMLParser-Prefix.pch │ │ ├── XMLElement.h │ │ ├── XMLElement.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Parsing XML with NSXMLParserTests │ │ ├── Parsing XML with NSXMLParserTests-Info.plist │ │ ├── Parsing_XML_with_NSXMLParserTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Sending HTTP DELETE Requests with NSURLConnection │ ├── Sending HTTP DELETE Requests with NSURLConnection.xcodeproj │ │ └── project.pbxproj │ ├── Sending HTTP DELETE Requests with NSURLConnection │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Sending HTTP DELETE Requests with NSURLConnection-Info.plist │ │ ├── Sending HTTP DELETE Requests with NSURLConnection-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Sending HTTP DELETE Requests with NSURLConnectionTests │ │ ├── Sending HTTP DELETE Requests with NSURLConnectionTests-Info.plist │ │ ├── Sending_HTTP_DELETE_Requests_with_NSURLConnectionTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Sending HTTP GET Requests with NSURLConnection │ ├── Sending HTTP GET Requests with NSURLConnection.xcodeproj │ │ └── project.pbxproj │ ├── Sending HTTP GET Requests with NSURLConnection │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Sending HTTP GET Requests with NSURLConnection-Info.plist │ │ ├── Sending HTTP GET Requests with NSURLConnection-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Sending HTTP GET Requests with NSURLConnectionTests │ │ ├── Sending HTTP GET Requests with NSURLConnectionTests-Info.plist │ │ ├── Sending_HTTP_GET_Requests_with_NSURLConnectionTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Sending HTTP POST Requests with NSURLConnection │ ├── Sending HTTP POST Requests with NSURLConnection.xcodeproj │ │ └── project.pbxproj │ ├── Sending HTTP POST Requests with NSURLConnection │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Sending HTTP POST Requests with NSURLConnection-Info.plist │ │ ├── Sending HTTP POST Requests with NSURLConnection-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Sending HTTP POST Requests with NSURLConnectionTests │ │ ├── Sending HTTP POST Requests with NSURLConnectionTests-Info.plist │ │ ├── Sending_HTTP_POST_Requests_with_NSURLConnectionTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Sending HTTP PUT Requests with NSURLConnection │ ├── Sending HTTP PUT Requests with NSURLConnection.xcodeproj │ │ └── project.pbxproj │ ├── Sending HTTP PUT Requests with NSURLConnection │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Sending HTTP PUT Requests with NSURLConnection-Info.plist │ │ ├── Sending HTTP PUT Requests with NSURLConnection-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Sending HTTP PUT Requests with NSURLConnectionTests │ │ ├── Sending HTTP PUT Requests with NSURLConnectionTests-Info.plist │ │ ├── Sending_HTTP_PUT_Requests_with_NSURLConnectionTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings └── Serializing Arrays and Dictionaries into JSON │ ├── Serializing Arrays and Dictionaries into JSON.xcodeproj │ └── project.pbxproj │ ├── Serializing Arrays and Dictionaries into JSON │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── Serializing Arrays and Dictionaries into JSON-Info.plist │ ├── Serializing Arrays and Dictionaries into JSON-Prefix.pch │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m │ └── Serializing Arrays and Dictionaries into JSONTests │ ├── Serializing Arrays and Dictionaries into JSONTests-Info.plist │ ├── Serializing_Arrays_and_Dictionaries_into_JSONTests.m │ └── en.lproj │ └── InfoPlist.strings ├── Chapter 12 ├── Accessing the Music Library │ ├── Accessing the Music Library.xcodeproj │ │ └── project.pbxproj │ ├── Accessing the Music Library │ │ ├── Accessing the Music Library-Info.plist │ │ ├── Accessing the Music Library-Prefix.pch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Accessing the Music LibraryTests │ │ ├── Accessing the Music LibraryTests-Info.plist │ │ ├── Accessing_the_Music_LibraryTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Capturing Thumbnails from Video Files │ ├── Capturing Thumbnails from Video Files.xcodeproj │ │ └── project.pbxproj │ ├── Capturing Thumbnails from Video Files │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Capturing Thumbnails from Video Files-Info.plist │ │ ├── Capturing Thumbnails from Video Files-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Sample.m4v │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Capturing Thumbnails from Video FilesTests │ │ ├── Capturing Thumbnails from Video FilesTests-Info.plist │ │ ├── Capturing_Thumbnails_from_Video_FilesTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Handling Interruptions While Playing Audio │ ├── Handling Interruptions While Playing Audio.xcodeproj │ │ └── project.pbxproj │ ├── Handling Interruptions While Playing Audio │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Handling Interruptions While Playing Audio-Info.plist │ │ ├── Handling Interruptions While Playing Audio-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── MySong.mp3 │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Handling Interruptions While Playing AudioTests │ │ ├── Handling Interruptions While Playing AudioTests-Info.plist │ │ ├── Handling_Interruptions_While_Playing_AudioTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Handling Interruptions While Recording Audio │ ├── Handling Interruptions While Recording Audio.xcodeproj │ │ └── project.pbxproj │ ├── Handling Interruptions While Recording Audio │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Handling Interruptions While Recording Audio-Info.plist │ │ ├── Handling Interruptions While Recording Audio-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Handling Interruptions While Recording AudioTests │ │ ├── Handling Interruptions While Recording AudioTests-Info.plist │ │ ├── Handling_Interruptions_While_Recording_AudioTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Introduction to Audio and Video │ ├── Introduction to Audio and Video.xcodeproj │ │ └── project.pbxproj │ ├── Introduction to Audio and Video │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Introduction to Audio and Video-Info.plist │ │ ├── Introduction to Audio and Video-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Introduction to Audio and VideoTests │ │ ├── Introduction to Audio and VideoTests-Info.plist │ │ ├── Introduction_to_Audio_and_VideoTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Playing Audio Files │ ├── Playing Audio Files.xcodeproj │ │ └── project.pbxproj │ ├── Playing Audio Files │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── MySong.mp3 │ │ ├── Playing Audio Files-Info.plist │ │ ├── Playing Audio Files-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Playing Audio FilesTests │ │ ├── Playing Audio FilesTests-Info.plist │ │ ├── Playing_Audio_FilesTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Playing Audio over Other Active Sounds │ ├── Playing Audio over Other Active Sounds.xcodeproj │ │ └── project.pbxproj │ ├── Playing Audio over Other Active Sounds │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── MySong.mp3 │ │ ├── Playing Audio over Other Active Sounds-Info.plist │ │ ├── Playing Audio over Other Active Sounds-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Playing Audio over Other Active SoundsTests │ │ ├── Playing Audio over Other Active SoundsTests-Info.plist │ │ ├── Playing_Audio_over_Other_Active_SoundsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Playing Video Files │ ├── Playing Video Files.xcodeproj │ │ └── project.pbxproj │ ├── Playing Video Files │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Playing Video Files-Info.plist │ │ ├── Playing Video Files-Prefix.pch │ │ ├── Sample.m4v │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Playing Video FilesTests │ │ ├── Playing Video FilesTests-Info.plist │ │ ├── Playing_Video_FilesTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings └── Recording Audio │ ├── Recording Audio.xcodeproj │ └── project.pbxproj │ ├── Recording Audio │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ │ ├── Main_iPad.storyboard │ │ └── Main_iPhone.storyboard │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── Recording Audio-Info.plist │ ├── Recording Audio-Prefix.pch │ ├── ViewController.h │ ├── ViewController.m │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m │ └── Recording AudioTests │ ├── Recording AudioTests-Info.plist │ ├── Recording_AudioTests.m │ └── en.lproj │ └── InfoPlist.strings ├── Chapter 13 ├── Adding Persons to Groups │ ├── Adding Persons to Groups.xcodeproj │ │ └── project.pbxproj │ ├── Adding Persons to Groups │ │ ├── Adding Persons to Groups-Info.plist │ │ ├── Adding Persons to Groups-Prefix.pch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Adding Persons to GroupsTests │ │ ├── Adding Persons to GroupsTests-Info.plist │ │ ├── Adding_Persons_to_GroupsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Inserting a Group Entry into the Address Book │ ├── Inserting a Group Entry into the Address Book.xcodeproj │ │ └── project.pbxproj │ ├── Inserting a Group Entry into the Address Book │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Inserting a Group Entry into the Address Book-Info.plist │ │ ├── Inserting a Group Entry into the Address Book-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Inserting a Group Entry into the Address BookTests │ │ ├── Inserting a Group Entry into the Address BookTests-Info.plist │ │ ├── Inserting_a_Group_Entry_into_the_Address_BookTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Inserting a Person Entry into the Address Book │ ├── Inserting a Person Entry into the Address Book.xcodeproj │ │ └── project.pbxproj │ ├── Inserting a Person Entry into the Address Book │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Inserting a Person Entry into the Address Book-Info.plist │ │ ├── Inserting a Person Entry into the Address Book-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Inserting a Person Entry into the Address BookTests │ │ ├── Inserting a Person Entry into the Address BookTests-Info.plist │ │ ├── Inserting_a_Person_Entry_into_the_Address_BookTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Introduction to Address Book │ ├── Introduction to Address Book.xcodeproj │ │ └── project.pbxproj │ ├── Introduction to Address Book │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Introduction to Address Book-Info.plist │ │ ├── Introduction to Address Book-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Introduction to Address BookTests │ │ ├── Introduction to Address BookTests-Info.plist │ │ ├── Introduction_to_Address_BookTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Requesting Access to the Address Book │ ├── Requesting Access to the Address Book.xcodeproj │ │ └── project.pbxproj │ ├── Requesting Access to the Address Book │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Requesting Access to the Address Book-Info.plist │ │ ├── Requesting Access to the Address Book-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Requesting Access to the Address BookTests │ │ ├── Requesting Access to the Address BookTests-Info.plist │ │ ├── Requesting_Access_to_the_Address_BookTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Retrieving All the People in the Address Book │ ├── Retrieving All the People in the Address Book.xcodeproj │ │ └── project.pbxproj │ ├── Retrieving All the People in the Address Book │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Retrieving All the People in the Address Book-Info.plist │ │ ├── Retrieving All the People in the Address Book-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Retrieving All the People in the Address BookTests │ │ ├── Retrieving All the People in the Address BookTests-Info.plist │ │ ├── Retrieving_All_the_People_in_the_Address_BookTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Retrieving Properties of Address Book Entries │ ├── Retrieving Properties of Address Book Entries.xcodeproj │ │ └── project.pbxproj │ ├── Retrieving Properties of Address Book Entries │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Retrieving Properties of Address Book Entries-Info.plist │ │ ├── Retrieving Properties of Address Book Entries-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Retrieving Properties of Address Book EntriesTests │ │ ├── Retrieving Properties of Address Book EntriesTests-Info.plist │ │ ├── Retrieving_Properties_of_Address_Book_EntriesTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Retrieving a Reference to an Address Book │ ├── Retrieving a Reference to an Address Book.xcodeproj │ │ └── project.pbxproj │ ├── Retrieving a Reference to an Address Book │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Retrieving a Reference to an Address Book-Info.plist │ │ ├── Retrieving a Reference to an Address Book-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Retrieving a Reference to an Address BookTests │ │ ├── Retrieving a Reference to an Address BookTests-Info.plist │ │ ├── Retrieving_a_Reference_to_an_Address_BookTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Retrieving and Setting a Person’s Address Book Image │ ├── Retrieving and Setting a Person’s Address Book Image.xcodeproj │ │ └── project.pbxproj │ ├── Retrieving and Setting a Person’s Address Book Image │ │ ├── Anthony Robbins.jpg │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Retrieving and Setting a Person’s Address Book Image-Info.plist │ │ ├── Retrieving and Setting a Person’s Address Book Image-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Retrieving and Setting a Person’s Address Book ImageTests │ │ ├── Retrieving and Setting a Person’s Address Book ImageTests-Info.plist │ │ ├── Retrieving_and_Setting_a_Person_s_Address_Book_ImageTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings └── Searching the Address Book │ ├── Searching the Address Book.xcodeproj │ └── project.pbxproj │ ├── Searching the Address Book │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── Searching the Address Book-Info.plist │ ├── Searching the Address Book-Prefix.pch │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m │ └── Searching the Address BookTests │ ├── Searching the Address BookTests-Info.plist │ ├── Searching_the_Address_BookTests.m │ └── en.lproj │ └── InfoPlist.strings ├── Chapter 14 ├── Creating Folders on Disk │ ├── Creating Folders on Disk.xcodeproj │ │ └── project.pbxproj │ ├── Creating Folders on Disk │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Creating Folders on Disk-Info.plist │ │ ├── Creating Folders on Disk-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Creating Folders on DiskTests │ │ ├── Creating Folders on DiskTests-Info.plist │ │ ├── Creating_Folders_on_DiskTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Deleting Files and Folders │ ├── Deleting Files and Folders.xcodeproj │ │ └── project.pbxproj │ ├── Deleting Files and Folders │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Deleting Files and Folders-Info.plist │ │ ├── Deleting Files and Folders-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Deleting Files and FoldersTests │ │ ├── Deleting Files and FoldersTests-Info.plist │ │ ├── Deleting_Files_and_FoldersTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Enumerating Files and Folders │ ├── Enumerating Files and Folders.xcodeproj │ │ └── project.pbxproj │ ├── Enumerating Files and Folders │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Enumerating Files and Folders-Info.plist │ │ ├── Enumerating Files and Folders-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Enumerating Files and FoldersTests │ │ ├── Enumerating Files and FoldersTests-Info.plist │ │ ├── Enumerating_Files_and_FoldersTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Finding the Path of the Most Useful Folders on Disk │ ├── Finding the Path of the Most Useful Folders on Disk.xcodeproj │ │ └── project.pbxproj │ ├── Finding the Path of the Most Useful Folders on Disk │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Finding the Path of the Most Useful Folders on Disk-Info.plist │ │ ├── Finding the Path of the Most Useful Folders on Disk-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Finding the Path of the Most Useful Folders on DiskTests │ │ ├── Finding the Path of the Most Useful Folders on DiskTests-Info.plist │ │ ├── Finding_the_Path_of_the_Most_Useful_Folders_on_DiskTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Saving Objects to Files │ ├── Saving Objects to Files.xcodeproj │ │ └── project.pbxproj │ ├── Saving Objects to Files │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Person.h │ │ ├── Person.m │ │ ├── Saving Objects to Files-Info.plist │ │ ├── Saving Objects to Files-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Saving Objects to FilesTests │ │ ├── Saving Objects to FilesTests-Info.plist │ │ ├── Saving_Objects_to_FilesTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings └── Writing to and Reading from Files │ ├── Writing to and Reading from Files.xcodeproj │ └── project.pbxproj │ ├── Writing to and Reading from Files │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── Writing to and Reading from Files-Info.plist │ ├── Writing to and Reading from Files-Prefix.pch │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m │ └── Writing to and Reading from FilesTests │ ├── Writing to and Reading from FilesTests-Info.plist │ ├── Writing_to_and_Reading_from_FilesTests.m │ └── en.lproj │ └── InfoPlist.strings ├── Chapter 15 ├── Detecting and Probing the Camera │ ├── Detecting and Probing the Camera.xcodeproj │ │ └── project.pbxproj │ ├── Detecting and Probing the Camera │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Detecting and Probing the Camera-Info.plist │ │ ├── Detecting and Probing the Camera-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Detecting and Probing the CameraTests │ │ ├── Detecting and Probing the CameraTests-Info.plist │ │ ├── Detecting_and_Probing_the_CameraTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Editing Videos on an iOS Device │ ├── Editing Videos on an iOS Device.xcodeproj │ │ └── project.pbxproj │ ├── Editing Videos on an iOS Device │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Editing Videos on an iOS Device-Info.plist │ │ ├── Editing Videos on an iOS Device-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Editing Videos on an iOS DeviceTests │ │ ├── Editing Videos on an iOS DeviceTests-Info.plist │ │ ├── Editing_Videos_on_an_iOS_DeviceTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Introduction to Camera and the Photo Library │ ├── Introduction to Camera and the Photo Library.xcodeproj │ │ └── project.pbxproj │ ├── Introduction to Camera and the Photo Library │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Introduction to Camera and the Photo Library-Info.plist │ │ ├── Introduction to Camera and the Photo Library-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Introduction to Camera and the Photo LibraryTests │ │ ├── Introduction to Camera and the Photo LibraryTests-Info.plist │ │ ├── Introduction_to_Camera_and_the_Photo_LibraryTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Retrieving Assets from the Assets Library │ ├── Retrieving Assets from the Assets Library.xcodeproj │ │ └── project.pbxproj │ ├── Retrieving Assets from the Assets Library │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Retrieving Assets from the Assets Library-Info.plist │ │ ├── Retrieving Assets from the Assets Library-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Retrieving Assets from the Assets LibraryTests │ │ ├── Retrieving Assets from the Assets LibraryTests-Info.plist │ │ ├── Retrieving_Assets_from_the_Assets_LibraryTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Retrieving Photos and Videos from the Photo Library │ ├── Retrieving Photos and Videos from the Photo Library.xcodeproj │ │ └── project.pbxproj │ ├── Retrieving Photos and Videos from the Photo Library │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Retrieving Photos and Videos from the Photo Library-Info.plist │ │ ├── Retrieving Photos and Videos from the Photo Library-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Retrieving Photos and Videos from the Photo LibraryTests │ │ ├── Retrieving Photos and Videos from the Photo LibraryTests-Info.plist │ │ ├── Retrieving_Photos_and_Videos_from_the_Photo_LibraryTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Storing Photos in the Photo Library │ ├── Storing Photos in the Photo Library.xcodeproj │ │ └── project.pbxproj │ ├── Storing Photos in the Photo Library │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Storing Photos in the Photo Library-Info.plist │ │ ├── Storing Photos in the Photo Library-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Storing Photos in the Photo LibraryTests │ │ ├── Storing Photos in the Photo LibraryTests-Info.plist │ │ ├── Storing_Photos_in_the_Photo_LibraryTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Storing Videos in the Photo Library │ ├── Storing Videos in the Photo Library.xcodeproj │ │ └── project.pbxproj │ ├── Storing Videos in the Photo Library │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── MyVideo.MOV │ │ ├── Storing Videos in the Photo Library-Info.plist │ │ ├── Storing Videos in the Photo Library-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Storing Videos in the Photo LibraryTests │ │ ├── Storing Videos in the Photo LibraryTests-Info.plist │ │ ├── Storing_Videos_in_the_Photo_LibraryTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Taking Photos with the Camera │ ├── Taking Photos with the Camera.xcodeproj │ │ └── project.pbxproj │ ├── Taking Photos with the Camera │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Taking Photos with the Camera-Info.plist │ │ ├── Taking Photos with the Camera-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Taking Photos with the CameraTests │ │ ├── Taking Photos with the CameraTests-Info.plist │ │ ├── Taking_Photos_with_the_CameraTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings └── Taking Videos with the Camera │ ├── Taking Videos with the Camera.xcodeproj │ └── project.pbxproj │ ├── Taking Videos with the Camera │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ │ ├── Main_iPad.storyboard │ │ └── Main_iPhone.storyboard │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── Taking Videos with the Camera-Info.plist │ ├── Taking Videos with the Camera-Prefix.pch │ ├── ViewController.h │ ├── ViewController.m │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m │ └── Taking Videos with the CameraTests │ ├── Taking Videos with the CameraTests-Info.plist │ ├── Taking_Videos_with_the_CameraTests.m │ └── en.lproj │ └── InfoPlist.strings ├── Chapter 16 ├── Adding Background Fetch Capabilities to Your Apps │ ├── Adding Background Fetch Capabilities to Your Apps.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ └── contents.xcworkspacedata │ ├── Adding Background Fetch Capabilities to Your Apps │ │ ├── Adding Background Fetch Capabilities to Your Apps-Info.plist │ │ ├── Adding Background Fetch Capabilities to Your Apps-Prefix.pch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Main_iPad.storyboard │ │ ├── Main_iPhone.storyboard │ │ ├── NewsItem.h │ │ ├── NewsItem.m │ │ ├── TableViewController.h │ │ ├── TableViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Adding Background Fetch Capabilities to Your AppsTests │ │ ├── Adding Background Fetch Capabilities to Your AppsTests-Info.plist │ │ ├── Adding_Background_Fetch_Capabilities_to_Your_AppsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Completing a Long-Running Task in the Background │ ├── Completing a Long-Running Task in the Background.xcodeproj │ │ └── project.pbxproj │ ├── Completing a Long-Running Task in the Background │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Completing a Long-Running Task in the Background-Info.plist │ │ ├── Completing a Long-Running Task in the Background-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Completing a Long-Running Task in the BackgroundTests │ │ ├── Completing a Long-Running Task in the BackgroundTests-Info.plist │ │ ├── Completing_a_Long_Running_Task_in_the_BackgroundTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Detecting the Availability of Multitasking │ ├── Detecting the Availability of Multitasking.xcodeproj │ │ └── project.pbxproj │ ├── Detecting the Availability of Multitasking │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Detecting the Availability of Multitasking-Info.plist │ │ ├── Detecting the Availability of Multitasking-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Detecting the Availability of MultitaskingTests │ │ ├── Detecting the Availability of MultitaskingTests-Info.plist │ │ ├── Detecting_the_Availability_of_MultitaskingTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Handling Location Changes in the Background │ ├── Handling Location Changes in the Background.xcodeproj │ │ └── project.pbxproj │ ├── Handling Location Changes in the Background │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Handling Location Changes in the Background-Info.plist │ │ ├── Handling Location Changes in the Background-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Handling Location Changes in the BackgroundTests │ │ ├── Handling Location Changes in the BackgroundTests-Info.plist │ │ ├── Handling_Location_Changes_in_the_BackgroundTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Handling Network Connections in the Background │ ├── Handling Network Connections in the Background.xcodeproj │ │ └── project.pbxproj │ ├── Handling Network Connections in the Background │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Handling Network Connections in the Background-Info.plist │ │ ├── Handling Network Connections in the Background-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Handling Network Connections in the BackgroundTests │ │ ├── Handling Network Connections in the BackgroundTests-Info.plist │ │ ├── Handling_Network_Connections_in_the_BackgroundTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Opting Out of Multitasking │ ├── Opting Out of Multitasking.xcodeproj │ │ └── project.pbxproj │ ├── Opting Out of Multitasking │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Opting Out of Multitasking-Info.plist │ │ ├── Opting Out of Multitasking-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Opting Out of MultitaskingTests │ │ ├── Opting Out of MultitaskingTests-Info.plist │ │ ├── Opting_Out_of_MultitaskingTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Playing Audio in the Background │ ├── Playing Audio in the Background.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ └── contents.xcworkspacedata │ ├── Playing Audio in the Background │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── MySong.mp3 │ │ ├── Playing Audio in the Background-Info.plist │ │ ├── Playing Audio in the Background-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Playing Audio in the BackgroundTests │ │ ├── Playing Audio in the BackgroundTests-Info.plist │ │ ├── Playing_Audio_in_the_BackgroundTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings └── Saving and Loading the State of Multitasking Apps │ ├── Saving and Loading the State of Multitasking Apps.xcodeproj │ └── project.pbxproj │ ├── Saving and Loading the State of Multitasking Apps │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── Saving and Loading the State of Multitasking Apps-Info.plist │ ├── Saving and Loading the State of Multitasking Apps-Prefix.pch │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m │ └── Saving and Loading the State of Multitasking AppsTests │ ├── Saving and Loading the State of Multitasking AppsTests-Info.plist │ ├── Saving_and_Loading_the_State_of_Multitasking_AppsTests.m │ └── en.lproj │ └── InfoPlist.strings ├── Chapter 17 ├── Delivering Push Notifications to Your App │ ├── Delivering Push Notifications to Your App.xcodeproj │ │ └── project.pbxproj │ ├── Delivering Push Notifications to Your App │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Delivering Push Notifications to Your App-Info.plist │ │ ├── Delivering Push Notifications to Your App-Prefix.pch │ │ ├── Entitlements.plist │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Delivering Push Notifications to Your AppTests │ │ ├── Delivering Push Notifications to Your AppTests-Info.plist │ │ ├── Delivering_Push_Notifications_to_Your_AppTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Handling Local System Notifications │ ├── Handling Local System Notifications.xcodeproj │ │ └── project.pbxproj │ ├── Handling Local System Notifications │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Handling Local System Notifications-Info.plist │ │ ├── Handling Local System Notifications-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Settings.bundle │ │ │ ├── Root.plist │ │ │ └── en.lproj │ │ │ │ └── Root.strings │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Handling Local System NotificationsTests │ │ ├── Handling Local System NotificationsTests-Info.plist │ │ ├── Handling_Local_System_NotificationsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Listening for and Reacting to Keyboard Notifications │ ├── Listening for and Reacting to Keyboard Notifications.xcodeproj │ │ └── project.pbxproj │ ├── Listening for and Reacting to Keyboard Notifications │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Background.png │ │ ├── Background.psd │ │ ├── Background@2x.png │ │ ├── Base.lproj │ │ │ └── Main.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ ├── Background.imageset │ │ │ │ ├── Background.png │ │ │ │ ├── Background@2x.png │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Listening for and Reacting to Keyboard Notifications-Info.plist │ │ ├── Listening for and Reacting to Keyboard Notifications-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Listening for and Reacting to Keyboard NotificationsTests │ │ ├── Listening for and Reacting to Keyboard NotificationsTests-Info.plist │ │ ├── Listening_for_and_Reacting_to_Keyboard_NotificationsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Listening for and Reacting to Notifications │ ├── Listening for and Reacting to Notifications.xcodeproj │ │ └── project.pbxproj │ ├── Listening for and Reacting to Notifications │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Listening for and Reacting to Notifications-Info.plist │ │ ├── Listening for and Reacting to Notifications-Prefix.pch │ │ ├── Person.h │ │ ├── Person.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Listening for and Reacting to NotificationsTests │ │ ├── Listening for and Reacting to NotificationsTests-Info.plist │ │ ├── Listening_for_and_Reacting_to_NotificationsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Scheduling Local Notifications │ ├── Scheduling Local Notifications.xcodeproj │ │ └── project.pbxproj │ ├── Scheduling Local Notifications │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Scheduling Local Notifications-Info.plist │ │ ├── Scheduling Local Notifications-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Scheduling Local NotificationsTests │ │ ├── Scheduling Local NotificationsTests-Info.plist │ │ ├── Scheduling_Local_NotificationsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Sending Notifications │ ├── Sending Notifications.xcodeproj │ │ └── project.pbxproj │ ├── Sending Notifications │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Sending Notifications-Info.plist │ │ ├── Sending Notifications-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Sending NotificationsTests │ │ ├── Sending NotificationsTests-Info.plist │ │ ├── Sending_NotificationsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings └── Setting Up Your App for Push Notifications │ ├── Setting Up Your App for Push Notifications.xcodeproj │ └── project.pbxproj │ ├── Setting Up Your App for Push Notifications │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Entitlements.plist │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── Setting Up Your App for Push Notifications-Info.plist │ ├── Setting Up Your App for Push Notifications-Prefix.pch │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m │ └── Setting Up Your App for Push NotificationsTests │ ├── Setting Up Your App for Push NotificationsTests-Info.plist │ ├── Setting_Up_Your_App_for_Push_NotificationsTests.m │ └── en.lproj │ └── InfoPlist.strings ├── Chapter 18 ├── Boosting Data Access in Table Views │ ├── Boosting Data Access in Table Views.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ └── contents.xcworkspacedata │ ├── Boosting Data Access in Table Views │ │ ├── AddPersonViewController.h │ │ ├── AddPersonViewController.m │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Boosting Data Access in Table Views-Info.plist │ │ ├── Boosting Data Access in Table Views-Prefix.pch │ │ ├── Boosting_Data_Access_in_Table_Views.xcdatamodeld │ │ │ ├── .xccurrentversion │ │ │ └── Boosting_Data_Access_in_Table_Views.xcdatamodel │ │ │ │ └── contents │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Main_iPad.storyboard │ │ ├── Main_iPhone.storyboard │ │ ├── Person.h │ │ ├── Person.m │ │ ├── PersonsListTableViewController.h │ │ ├── PersonsListTableViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Boosting Data Access in Table ViewsTests │ │ ├── Boosting Data Access in Table ViewsTests-Info.plist │ │ ├── Boosting_Data_Access_in_Table_ViewsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Creating a Core Data Model with Xcode │ ├── Creating a Core Data Model with Xcode.xcodeproj │ │ └── project.pbxproj │ ├── Creating a Core Data Model with Xcode │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Creating a Core Data Model with Xcode-Info.plist │ │ ├── Creating a Core Data Model with Xcode-Prefix.pch │ │ ├── Creating_a_Core_Data_Model_with_Xcode.xcdatamodeld │ │ │ ├── .xccurrentversion │ │ │ └── Creating_a_Core_Data_Model_with_Xcode.xcdatamodel │ │ │ │ └── contents │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Creating a Core Data Model with XcodeTests │ │ ├── Creating a Core Data Model with XcodeTests-Info.plist │ │ ├── Creating_a_Core_Data_Model_with_XcodeTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Creating and Saving Data Using Core Data │ ├── Creating and Saving Data Using Core Data.xcodeproj │ │ └── project.pbxproj │ ├── Creating and Saving Data Using Core Data │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Creating and Saving Data Using Core Data-Info.plist │ │ ├── Creating and Saving Data Using Core Data-Prefix.pch │ │ ├── Creating_and_Saving_Data_Using_Core_Data.xcdatamodeld │ │ │ ├── .xccurrentversion │ │ │ └── Creating_and_Saving_Data_Using_Core_Data.xcdatamodel │ │ │ │ └── contents │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Person.h │ │ ├── Person.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Creating and Saving Data Using Core DataTests │ │ ├── Creating and Saving Data Using Core DataTests-Info.plist │ │ ├── Creating_and_Saving_Data_Using_Core_DataTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Deleting Data From Core Data │ ├── Deleting Data From Core Data.xcodeproj │ │ └── project.pbxproj │ ├── Deleting Data From Core Data │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Deleting Data From Core Data-Info.plist │ │ ├── Deleting Data From Core Data-Prefix.pch │ │ ├── Deleting_Data_From_Core_Data.xcdatamodeld │ │ │ ├── .xccurrentversion │ │ │ └── Deleting_Data_From_Core_Data.xcdatamodel │ │ │ │ └── contents │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Person.h │ │ ├── Person.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Deleting Data From Core DataTests │ │ ├── Deleting Data From Core DataTests-Info.plist │ │ ├── Deleting_Data_From_Core_DataTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Fetching Data in the Background │ ├── Fetching Data in the Background.xcodeproj │ │ └── project.pbxproj │ ├── Fetching Data in the Background │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Fetching Data in the Background-Info.plist │ │ ├── Fetching Data in the Background-Prefix.pch │ │ ├── Fetching_Data_in_the_Background.xcdatamodeld │ │ │ ├── .xccurrentversion │ │ │ └── Fetching_Data_in_the_Background.xcdatamodel │ │ │ │ └── contents │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Person.h │ │ ├── Person.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Fetching Data in the BackgroundTests │ │ ├── Fetching Data in the BackgroundTests-Info.plist │ │ ├── Fetching_Data_in_the_BackgroundTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Generating Class Files for Core Data Entities │ ├── Generating Class Files for Core Data Entities.xcodeproj │ │ └── project.pbxproj │ ├── Generating Class Files for Core Data Entities │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Generating Class Files for Core Data Entities-Info.plist │ │ ├── Generating Class Files for Core Data Entities-Prefix.pch │ │ ├── Generating_Class_Files_for_Core_Data_Entities.xcdatamodeld │ │ │ ├── .xccurrentversion │ │ │ └── Generating_Class_Files_for_Core_Data_Entities.xcdatamodel │ │ │ │ └── contents │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Person.h │ │ ├── Person.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Generating Class Files for Core Data EntitiesTests │ │ ├── Generating Class Files for Core Data EntitiesTests-Info.plist │ │ ├── Generating_Class_Files_for_Core_Data_EntitiesTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Implementing Relationships in Core Data │ ├── Implementing Relationships in Core Data.xcodeproj │ │ └── project.pbxproj │ ├── Implementing Relationships in Core Data │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Employee.h │ │ ├── Employee.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Implementing Relationships in Core Data-Info.plist │ │ ├── Implementing Relationships in Core Data-Prefix.pch │ │ ├── Implementing_Relationships_in_Core_Data.xcdatamodeld │ │ │ ├── .xccurrentversion │ │ │ └── Implementing_Relationships_in_Core_Data.xcdatamodel │ │ │ │ └── contents │ │ ├── Manager.h │ │ ├── Manager.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Implementing Relationships in Core DataTests │ │ ├── Implementing Relationships in Core DataTests-Info.plist │ │ ├── Implementing_Relationships_in_Core_DataTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Introduction to Core Data │ ├── Introduction to Core Data.xcodeproj │ │ └── project.pbxproj │ ├── Introduction to Core Data │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Introduction to Core Data-Info.plist │ │ ├── Introduction to Core Data-Prefix.pch │ │ ├── Introduction_to_Core_Data.xcdatamodeld │ │ │ ├── .xccurrentversion │ │ │ └── Introduction_to_Core_Data.xcdatamodel │ │ │ │ └── contents │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Introduction to Core DataTests │ │ ├── Introduction to Core DataTests-Info.plist │ │ ├── Introduction_to_Core_DataTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Reading Data from Core Data │ ├── Reading Data from Core Data.xcodeproj │ │ └── project.pbxproj │ ├── Reading Data from Core Data │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Person.h │ │ ├── Person.m │ │ ├── Reading Data from Core Data-Info.plist │ │ ├── Reading Data from Core Data-Prefix.pch │ │ ├── Reading_Data_from_Core_Data.xcdatamodeld │ │ │ ├── .xccurrentversion │ │ │ └── Reading_Data_from_Core_Data.xcdatamodel │ │ │ │ └── contents │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Reading Data from Core DataTests │ │ ├── Reading Data from Core DataTests-Info.plist │ │ ├── Reading_Data_from_Core_DataTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Sorting Data in Core Data │ ├── Sorting Data in Core Data.xcodeproj │ │ └── project.pbxproj │ ├── Sorting Data in Core Data │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Person.h │ │ ├── Person.m │ │ ├── Sorting Data in Core Data-Info.plist │ │ ├── Sorting Data in Core Data-Prefix.pch │ │ ├── Sorting_Data_in_Core_Data.xcdatamodeld │ │ │ ├── .xccurrentversion │ │ │ └── Sorting_Data_in_Core_Data.xcdatamodel │ │ │ │ └── contents │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Sorting Data in Core DataTests │ │ ├── Sorting Data in Core DataTests-Info.plist │ │ ├── Sorting_Data_in_Core_DataTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings └── Using Custom Data Types in your Core Data Model │ ├── Using Custom Data Types in your Core Data Model.xcodeproj │ └── project.pbxproj │ ├── Using Custom Data Types in your Core Data Model │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── ColorTransformer.h │ ├── ColorTransformer.m │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── Laptop.h │ ├── Laptop.m │ ├── Using Custom Data Types in your Core Data Model-Info.plist │ ├── Using Custom Data Types in your Core Data Model-Prefix.pch │ ├── Using_Custom_Data_Types_in_your_Core_Data_Model.xcdatamodeld │ │ ├── .xccurrentversion │ │ └── Using_Custom_Data_Types_in_your_Core_Data_Model.xcdatamodel │ │ │ └── contents │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m │ └── Using Custom Data Types in your Core Data ModelTests │ ├── Using Custom Data Types in your Core Data ModelTests-Info.plist │ ├── Using_Custom_Data_Types_in_your_Core_Data_ModelTests.m │ └── en.lproj │ └── InfoPlist.strings ├── Chapter 19 ├── Accessing the Contents of Calendars │ ├── Accessing the Contents of Calendars.xcodeproj │ │ └── project.pbxproj │ ├── Accessing the Contents of Calendars │ │ ├── Accessing the Contents of Calendars-Info.plist │ │ ├── Accessing the Contents of Calendars-Prefix.pch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Accessing the Contents of CalendarsTests │ │ ├── Accessing the Contents of CalendarsTests-Info.plist │ │ ├── Accessing_the_Contents_of_CalendarsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Adding Alarms to Calendars │ ├── Adding Alarms to Calendars.xcodeproj │ │ └── project.pbxproj │ ├── Adding Alarms to Calendars │ │ ├── Adding Alarms to Calendars-Info.plist │ │ ├── Adding Alarms to Calendars-Prefix.pch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Adding Alarms to CalendarsTests │ │ ├── Adding Alarms to CalendarsTests-Info.plist │ │ ├── Adding_Alarms_to_CalendarsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Adding Events to Calendars │ ├── Adding Events to Calendars.xcodeproj │ │ └── project.pbxproj │ ├── Adding Events to Calendars │ │ ├── Adding Events to Calendars-Info.plist │ │ ├── Adding Events to Calendars-Prefix.pch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Adding Events to CalendarsTests │ │ ├── Adding Events to CalendarsTests-Info.plist │ │ ├── Adding_Events_to_CalendarsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Adding Recurring Events to Calendars │ ├── Adding Recurring Events to Calendars.xcodeproj │ │ └── project.pbxproj │ ├── Adding Recurring Events to Calendars │ │ ├── Adding Recurring Events to Calendars-Info.plist │ │ ├── Adding Recurring Events to Calendars-Prefix.pch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Adding Recurring Events to CalendarsTests │ │ ├── Adding Recurring Events to CalendarsTests-Info.plist │ │ ├── Adding_Recurring_Events_to_CalendarsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Handling Event Changed Notifications │ ├── Handling Event Changed Notifications.xcodeproj │ │ └── project.pbxproj │ ├── Handling Event Changed Notifications │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Handling Event Changed Notifications-Info.plist │ │ ├── Handling Event Changed Notifications-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Handling Event Changed NotificationsTests │ │ ├── Handling Event Changed NotificationsTests-Info.plist │ │ ├── Handling_Event_Changed_NotificationsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Introduction to Dates and Calendars │ ├── Introduction to Dates and Calendars.xcodeproj │ │ └── project.pbxproj │ ├── Introduction to Dates and Calendars │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Introduction to Dates and Calendars-Info.plist │ │ ├── Introduction to Dates and Calendars-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Introduction to Dates and CalendarsTests │ │ ├── Introduction to Dates and CalendarsTests-Info.plist │ │ ├── Introduction_to_Dates_and_CalendarsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Presenting Event Edit View Controllers │ ├── Presenting Event Edit View Controllers.xcodeproj │ │ └── project.pbxproj │ ├── Presenting Event Edit View Controllers │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Presenting Event Edit View Controllers-Info.plist │ │ ├── Presenting Event Edit View Controllers-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Presenting Event Edit View ControllersTests │ │ ├── Presenting Event Edit View ControllersTests-Info.plist │ │ ├── Presenting_Event_Edit_View_ControllersTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Presenting Event View Controllers │ ├── Presenting Event View Controllers.xcodeproj │ │ └── project.pbxproj │ ├── Presenting Event View Controllers │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Presenting Event View Controllers-Info.plist │ │ ├── Presenting Event View Controllers-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Presenting Event View ControllersTests │ │ ├── Presenting Event View ControllersTests-Info.plist │ │ ├── Presenting_Event_View_ControllersTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Removing Events from Calendars │ ├── Removing Events from Calendars.xcodeproj │ │ └── project.pbxproj │ ├── Removing Events from Calendars │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Removing Events from Calendars-Info.plist │ │ ├── Removing Events from Calendars-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Removing Events from CalendarsTests │ │ ├── Removing Events from CalendarsTests-Info.plist │ │ ├── Removing_Events_from_CalendarsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Requesting Permission to Access Calendars │ ├── Requesting Permission to Access Calendars.xcodeproj │ │ └── project.pbxproj │ ├── Requesting Permission to Access Calendars │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Requesting Permission to Access Calendars-Info.plist │ │ ├── Requesting Permission to Access Calendars-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Requesting Permission to Access CalendarsTests │ │ ├── Requesting Permission to Access CalendarsTests-Info.plist │ │ ├── Requesting_Permission_to_Access_CalendarsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Retrieving Calendar Groups on an iOS Device │ ├── Retrieving Calendar Groups on an iOS Device.xcodeproj │ │ └── project.pbxproj │ ├── Retrieving Calendar Groups on an iOS Device │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Retrieving Calendar Groups on an iOS Device-Info.plist │ │ ├── Retrieving Calendar Groups on an iOS Device-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Retrieving Calendar Groups on an iOS DeviceTests │ │ ├── Retrieving Calendar Groups on an iOS DeviceTests-Info.plist │ │ ├── Retrieving_Calendar_Groups_on_an_iOS_DeviceTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings └── Retrieving the Attendees of an Event │ ├── Retrieving the Attendees of an Event.xcodeproj │ └── project.pbxproj │ ├── Retrieving the Attendees of an Event │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── Retrieving the Attendees of an Event-Info.plist │ ├── Retrieving the Attendees of an Event-Prefix.pch │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m │ └── Retrieving the Attendees of an EventTests │ ├── Retrieving the Attendees of an EventTests-Info.plist │ ├── Retrieving_the_Attendees_of_an_EventTests.m │ └── en.lproj │ └── InfoPlist.strings ├── Chapter 2 ├── Adding Gravity to your UI components │ ├── Adding Gravity to your UI components.xcodeproj │ │ └── project.pbxproj │ ├── Adding Gravity to your UI components │ │ ├── Adding Gravity to your UI components-Info.plist │ │ ├── Adding Gravity to your UI components-Prefix.pch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Adding Gravity to your UI componentsTests │ │ ├── Adding Gravity to your UI componentsTests-Info.plist │ │ ├── Adding_Gravity_to_your_UI_componentsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Adding a Dynamic Snap Effect to Your UI Components │ ├── Adding a Dynamic Snap Effect to Your UI Components.xcodeproj │ │ └── project.pbxproj │ ├── Adding a Dynamic Snap Effect to Your UI Components │ │ ├── Adding a Dynamic Snap Effect to Your UI Components-Info.plist │ │ ├── Adding a Dynamic Snap Effect to Your UI Components-Prefix.pch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Adding a Dynamic Snap Effect to Your UI ComponentsTests │ │ ├── Adding a Dynamic Snap Effect to Your UI ComponentsTests-Info.plist │ │ ├── Adding_a_Dynamic_Snap_Effect_to_Your_UI_ComponentsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Animating Your UI Components With a Push │ ├── Animating Your UI Components With a Push.xcodeproj │ │ └── project.pbxproj │ ├── Animating Your UI Components With a Push │ │ ├── Animating Your UI Components With a Push-Info.plist │ │ ├── Animating Your UI Components With a Push-Prefix.pch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Animating Your UI Components With a PushTests │ │ ├── Animating Your UI Components With a PushTests-Info.plist │ │ ├── Animating_Your_UI_Components_With_a_PushTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Assigning Characteristic to Your Dynamic Effects │ ├── Assigning Characteristic to Your Dynamic Effects.xcodeproj │ │ └── project.pbxproj │ ├── Assigning Characteristic to Your Dynamic Effects │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Assigning Characteristic to Your Dynamic Effects-Info.plist │ │ ├── Assigning Characteristic to Your Dynamic Effects-Prefix.pch │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Assigning Characteristic to Your Dynamic EffectsTests │ │ ├── Assigning Characteristic to Your Dynamic EffectsTests-Info.plist │ │ ├── Assigning_Characteristic_to_Your_Dynamic_EffectsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Attaching Multiple Dynamic Items to Each Other │ ├── Attaching Multiple Dynamic Items to Each Other.xcodeproj │ │ └── project.pbxproj │ ├── Attaching Multiple Dynamic Items to Each Other │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Attaching Multiple Dynamic Items to Each Other-Info.plist │ │ ├── Attaching Multiple Dynamic Items to Each Other-Prefix.pch │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Attaching Multiple Dynamic Items to Each OtherTests │ │ ├── Attaching Multiple Dynamic Items to Each OtherTests-Info.plist │ │ ├── Attaching_Multiple_Dynamic_Items_to_Each_OtherTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings └── Detecting and Reacting to Collisions Between UI Components │ ├── Detecting and Reacting to Collisions Between UI Components.xcodeproj │ └── project.pbxproj │ ├── Detecting and Reacting to Collisions Between UI Components │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ │ ├── Main_iPad.storyboard │ │ └── Main_iPhone.storyboard │ ├── Detecting and Reacting to Collisions Between UI Components-Info.plist │ ├── Detecting and Reacting to Collisions Between UI Components-Prefix.pch │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── ViewController.h │ ├── ViewController.m │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m │ └── Detecting and Reacting to Collisions Between UI ComponentsTests │ ├── Detecting and Reacting to Collisions Between UI ComponentsTests-Info.plist │ ├── Detecting_and_Reacting_to_Collisions_Between_UI_ComponentsTests.m │ └── en.lproj │ └── InfoPlist.strings ├── Chapter 20 ├── Adding Shadows to Shapes │ ├── Adding Shadows to Shapes.xcodeproj │ │ └── project.pbxproj │ ├── Adding Shadows to Shapes │ │ ├── Adding Shadows to Shapes-Info.plist │ │ ├── Adding Shadows to Shapes-Prefix.pch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── View.h │ │ ├── View.m │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Adding Shadows to ShapesTests │ │ ├── Adding Shadows to ShapesTests-Info.plist │ │ ├── Adding_Shadows_to_ShapesTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Animating and Moving Views │ ├── Animating and Moving Views.xcodeproj │ │ └── project.pbxproj │ ├── Animating and Moving Views │ │ ├── Animating and Moving Views-Info.plist │ │ ├── Animating and Moving Views-Prefix.pch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ ├── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ │ └── Xcode.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Xcode.png │ │ │ │ └── Xcode@2x.png │ │ ├── View.h │ │ ├── View.m │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Animating and Moving ViewsTests │ │ ├── Animating and Moving ViewsTests-Info.plist │ │ ├── Animating_and_Moving_ViewsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Animating and Rotating Views │ ├── Animating and Rotating Views.xcodeproj │ │ └── project.pbxproj │ ├── Animating and Rotating Views │ │ ├── Animating and Rotating Views-Info.plist │ │ ├── Animating and Rotating Views-Prefix.pch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ ├── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ │ └── Xcode.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Xcode.png │ │ │ │ └── Xcode@2x.png │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Animating and Rotating ViewsTests │ │ ├── Animating and Rotating ViewsTests-Info.plist │ │ ├── Animating_and_Rotating_ViewsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Animating and Scaling Views │ ├── Animating and Scaling Views.xcodeproj │ │ └── project.pbxproj │ ├── Animating and Scaling Views │ │ ├── Animating and Scaling Views-Info.plist │ │ ├── Animating and Scaling Views-Prefix.pch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ ├── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ │ └── Xcode.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Xcode.png │ │ │ │ └── Xcode@2x.png │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Animating and Scaling ViewsTests │ │ ├── Animating and Scaling ViewsTests-Info.plist │ │ ├── Animating_and_Scaling_ViewsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Capturing a Screenshot of Your View Into an Image │ ├── Capturing a Screenshot of Your View Into an Image.xcodeproj │ │ └── project.pbxproj │ ├── Capturing a Screenshot of Your View Into an Image │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Capturing a Screenshot of Your View Into an Image-Info.plist │ │ ├── Capturing a Screenshot of Your View Into an Image-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Capturing a Screenshot of Your View Into an ImageTests │ │ ├── Capturing a Screenshot of Your View Into an ImageTests-Info.plist │ │ ├── Capturing_a_Screenshot_of_Your_View_Into_an_ImageTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Constructing Paths │ ├── Constructing Paths.xcodeproj │ │ └── project.pbxproj │ ├── Constructing Paths │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Constructing Paths-Info.plist │ │ ├── Constructing Paths-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── View.h │ │ ├── View.m │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Constructing PathsTests │ │ ├── Constructing PathsTests-Info.plist │ │ ├── Constructing_PathsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Constructing Resizable Images │ ├── Constructing Resizable Images.xcodeproj │ │ └── project.pbxproj │ ├── Constructing Resizable Images │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Constructing Resizable Images-Info.plist │ │ ├── Constructing Resizable Images-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ ├── Button.imageset │ │ │ │ ├── Button.png │ │ │ │ ├── Button@2x.png │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Constructing Resizable ImagesTests │ │ ├── Constructing Resizable ImagesTests-Info.plist │ │ ├── Constructing_Resizable_ImagesTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Constructing, Setting, and Using Colors │ ├── Constructing, Setting, and Using Colors.xcodeproj │ │ └── project.pbxproj │ ├── Constructing, Setting, and Using Colors │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Constructing, Setting, and Using Colors-Info.plist │ │ ├── Constructing, Setting, and Using Colors-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── View.h │ │ ├── View.m │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Constructing, Setting, and Using ColorsTests │ │ ├── Constructing, Setting, and Using ColorsTests-Info.plist │ │ ├── Constructing__Setting__and_Using_ColorsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Drawing Gradients │ ├── Drawing Gradients.xcodeproj │ │ └── project.pbxproj │ ├── Drawing Gradients │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Drawing Gradients-Info.plist │ │ ├── Drawing Gradients-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── View.h │ │ ├── View.m │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Drawing GradientsTests │ │ ├── Drawing GradientsTests-Info.plist │ │ ├── Drawing_GradientsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Drawing Images │ ├── Drawing Images.xcodeproj │ │ └── project.pbxproj │ ├── Drawing Images │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Drawing Images-Info.plist │ │ ├── Drawing Images-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ ├── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ │ └── Xcode.imageset │ │ │ │ ├── Contents.json │ │ │ │ ├── Xcode.png │ │ │ │ └── Xcode@2x.png │ │ ├── View.h │ │ ├── View.m │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Drawing ImagesTests │ │ ├── Drawing ImagesTests-Info.plist │ │ ├── Drawing_ImagesTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Drawing Lines │ ├── Drawing Lines.xcodeproj │ │ └── project.pbxproj │ ├── Drawing Lines │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Drawing Lines-Info.plist │ │ ├── Drawing Lines-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── View.h │ │ ├── View.m │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Drawing LinesTests │ │ ├── Drawing LinesTests-Info.plist │ │ ├── Drawing_LinesTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Drawing Rectangles │ ├── Drawing Rectangles.xcodeproj │ │ └── project.pbxproj │ ├── Drawing Rectangles │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Drawing Rectangles-Info.plist │ │ ├── Drawing Rectangles-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── View.h │ │ ├── View.m │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Drawing RectanglesTests │ │ ├── Drawing RectanglesTests-Info.plist │ │ ├── Drawing_RectanglesTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Drawing Text │ ├── Drawing Text.xcodeproj │ │ └── project.pbxproj │ ├── Drawing Text │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Drawing Text-Info.plist │ │ ├── Drawing Text-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── View.h │ │ ├── View.m │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Drawing TextTests │ │ ├── Drawing TextTests-Info.plist │ │ ├── Drawing_TextTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Enumerating and Loading Fonts │ ├── Enumerating and Loading Fonts.xcodeproj │ │ └── project.pbxproj │ ├── Enumerating and Loading Fonts │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Enumerating and Loading Fonts-Info.plist │ │ ├── Enumerating and Loading Fonts-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Enumerating and Loading FontsTests │ │ ├── Enumerating and Loading FontsTests-Info.plist │ │ ├── Enumerating_and_Loading_FontsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Introduction to Graphics and Animations │ ├── Introduction to Graphics and Animations.xcodeproj │ │ └── project.pbxproj │ ├── Introduction to Graphics and Animations │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Introduction to Graphics and Animations-Info.plist │ │ ├── Introduction to Graphics and Animations-Prefix.pch │ │ ├── View.h │ │ ├── View.m │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Introduction to Graphics and AnimationsTests │ │ ├── Introduction to Graphics and AnimationsTests-Info.plist │ │ ├── Introduction_to_Graphics_and_AnimationsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Moving Shapes Drawn on a Graphic Context │ ├── Moving Shapes Drawn on a Graphic Context.xcodeproj │ │ └── project.pbxproj │ ├── Moving Shapes Drawn on a Graphic Context │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Moving Shapes Drawn on a Graphic Context-Info.plist │ │ ├── Moving Shapes Drawn on a Graphic Context-Prefix.pch │ │ ├── View.h │ │ ├── View.m │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Moving Shapes Drawn on a Graphic ContextTests │ │ ├── Moving Shapes Drawn on a Graphic ContextTests-Info.plist │ │ ├── Moving_Shapes_Drawn_on_a_Graphic_ContextTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Rotating Shapes Drawn on Graphic Contexts │ ├── Rotating Shapes Drawn on Graphic Contexts.xcodeproj │ │ └── project.pbxproj │ ├── Rotating Shapes Drawn on Graphic Contexts │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Rotating Shapes Drawn on Graphic Contexts-Info.plist │ │ ├── Rotating Shapes Drawn on Graphic Contexts-Prefix.pch │ │ ├── View.h │ │ ├── View.m │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Rotating Shapes Drawn on Graphic ContextsTests │ │ ├── Rotating Shapes Drawn on Graphic ContextsTests-Info.plist │ │ ├── Rotating_Shapes_Drawn_on_Graphic_ContextsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings └── Scaling Shapes Draw on Graphic Contexts │ ├── Scaling Shapes Draw on Graphic Contexts.xcodeproj │ └── project.pbxproj │ ├── Scaling Shapes Draw on Graphic Contexts │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ │ ├── Main_iPad.storyboard │ │ └── Main_iPhone.storyboard │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── Scaling Shapes Draw on Graphic Contexts-Info.plist │ ├── Scaling Shapes Draw on Graphic Contexts-Prefix.pch │ ├── View.h │ ├── View.m │ ├── ViewController.h │ ├── ViewController.m │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m │ └── Scaling Shapes Draw on Graphic ContextsTests │ ├── Scaling Shapes Draw on Graphic ContextsTests-Info.plist │ ├── Scaling_Shapes_Draw_on_Graphic_ContextsTests.m │ └── en.lproj │ └── InfoPlist.strings ├── Chapter 21 ├── Detecting Shakes on an iOS Device │ ├── Detecting Shakes on an iOS Device.xcodeproj │ │ └── project.pbxproj │ ├── Detecting Shakes on an iOS Device │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Detecting Shakes on an iOS Device-Info.plist │ │ ├── Detecting Shakes on an iOS Device-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Detecting Shakes on an iOS DeviceTests │ │ ├── Detecting Shakes on an iOS DeviceTests-Info.plist │ │ ├── Detecting_Shakes_on_an_iOS_DeviceTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Detecting the Availability of a Gyroscope │ ├── Detecting the Availability of a Gyroscope.xcodeproj │ │ └── project.pbxproj │ ├── Detecting the Availability of a Gyroscope │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Detecting the Availability of a Gyroscope-Info.plist │ │ ├── Detecting the Availability of a Gyroscope-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Detecting the Availability of a GyroscopeTests │ │ ├── Detecting the Availability of a GyroscopeTests-Info.plist │ │ ├── Detecting_the_Availability_of_a_GyroscopeTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Detecting the Availability of an Accelerometer │ ├── Detecting the Availability of an Accelerometer.xcodeproj │ │ └── project.pbxproj │ ├── Detecting the Availability of an Accelerometer │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Detecting the Availability of an Accelerometer-Info.plist │ │ ├── Detecting the Availability of an Accelerometer-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Detecting the Availability of an AccelerometerTests │ │ ├── Detecting the Availability of an AccelerometerTests-Info.plist │ │ ├── Detecting_the_Availability_of_an_AccelerometerTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Retrieving Accelerometer Data │ ├── Retrieving Accelerometer Data.xcodeproj │ │ └── project.pbxproj │ ├── Retrieving Accelerometer Data │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Retrieving Accelerometer Data-Info.plist │ │ ├── Retrieving Accelerometer Data-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Retrieving Accelerometer DataTests │ │ ├── Retrieving Accelerometer DataTests-Info.plist │ │ ├── Retrieving_Accelerometer_DataTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings └── Retrieving Gyroscope Data │ ├── Retrieving Gyroscope Data.xcodeproj │ └── project.pbxproj │ ├── Retrieving Gyroscope Data │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── Retrieving Gyroscope Data-Info.plist │ ├── Retrieving Gyroscope Data-Prefix.pch │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m │ └── Retrieving Gyroscope DataTests │ ├── Retrieving Gyroscope DataTests-Info.plist │ ├── Retrieving_Gyroscope_DataTests.m │ └── en.lproj │ └── InfoPlist.strings ├── Chapter 22 ├── Creating and Managing Folders for Apps in iCloud │ ├── Creating and Managing Folders for Apps in iCloud.xcodeproj │ │ └── project.pbxproj │ ├── Creating and Managing Folders for Apps in iCloud │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Creating and Managing Folders for Apps in iCloud-Info.plist │ │ ├── Creating and Managing Folders for Apps in iCloud-Prefix.pch │ │ ├── Creating and Managing Folders for Apps in iCloud.entitlements │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Creating and Managing Folders for Apps in iCloudTests │ │ ├── Creating and Managing Folders for Apps in iCloudTests-Info.plist │ │ ├── Creating_and_Managing_Folders_for_Apps_in_iCloudTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Managing the State of Documents in iCloud │ ├── Managing the State of Documents in iCloud.xcodeproj │ │ └── project.pbxproj │ ├── Managing the State of Documents in iCloud │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── CloudDocument.h │ │ ├── CloudDocument.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Managing the State of Documents in iCloud-Info.plist │ │ ├── Managing the State of Documents in iCloud-Prefix.pch │ │ ├── Managing the State of Documents in iCloud.entitlements │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Managing the State of Documents in iCloudTests │ │ ├── Managing the State of Documents in iCloudTests-Info.plist │ │ ├── Managing_the_State_of_Documents_in_iCloudTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Searching for Files and Folders in iCloud │ ├── Searching for Files and Folders in iCloud.xcodeproj │ │ └── project.pbxproj │ ├── Searching for Files and Folders in iCloud │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Searching for Files and Folders in iCloud-Info.plist │ │ ├── Searching for Files and Folders in iCloud-Prefix.pch │ │ ├── Searching for Files and Folders in iCloud.entitlements │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Searching for Files and Folders in iCloudTests │ │ ├── Searching for Files and Folders in iCloudTests-Info.plist │ │ ├── Searching_for_Files_and_Folders_in_iCloudTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Setting Up Your App For iCloud │ ├── Setting Up Your App For iCloud.xcodeproj │ │ └── project.pbxproj │ ├── Setting Up Your App For iCloud │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Setting Up Your App For iCloud-Info.plist │ │ ├── Setting Up Your App For iCloud-Prefix.pch │ │ ├── Setting Up Your App For iCloud.entitlements │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Setting Up Your App For iCloudTests │ │ ├── Setting Up Your App For iCloudTests-Info.plist │ │ ├── Setting_Up_Your_App_For_iCloudTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Storing User Documents in iCloud │ ├── Storing User Documents in iCloud.xcodeproj │ │ └── project.pbxproj │ ├── Storing User Documents in iCloud │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── CloudDocument.h │ │ ├── CloudDocument.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Storing User Documents in iCloud-Info.plist │ │ ├── Storing User Documents in iCloud-Prefix.pch │ │ ├── Storing User Documents in iCloud.entitlements │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Storing User Documents in iCloudTests │ │ ├── Storing User Documents in iCloudTests-Info.plist │ │ ├── Storing_User_Documents_in_iCloudTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings └── Storing and Synchronizing Dictionaries in iCloud │ ├── Storing and Synchronizing Dictionaries in iCloud.xcodeproj │ └── project.pbxproj │ ├── Storing and Synchronizing Dictionaries in iCloud │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── Storing and Synchronizing Dictionaries in iCloud-Info.plist │ ├── Storing and Synchronizing Dictionaries in iCloud-Prefix.pch │ ├── Storing and Synchronizing Dictionaries in iCloud.entitlements │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m │ └── Storing and Synchronizing Dictionaries in iCloudTests │ ├── Storing and Synchronizing Dictionaries in iCloudTests-Info.plist │ ├── Storing_and_Synchronizing_Dictionaries_in_iCloudTests.m │ └── en.lproj │ └── InfoPlist.strings ├── Chapter 23 ├── Creating Pass Files │ ├── Creating Pass Files.xcodeproj │ │ └── project.pbxproj │ ├── Creating Pass Files │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Creating Pass Files-Info.plist │ │ ├── Creating Pass Files-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── main.m │ │ ├── pass.json │ │ └── test.json │ └── Creating Pass FilesTests │ │ ├── Creating Pass FilesTests-Info.plist │ │ ├── Creating_Pass_FilesTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Interacting with Passbook Programmatically │ ├── Interacting with Passbook Programmatically.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ └── contents.xcworkspacedata │ ├── Interacting with Passbook Programmatically │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Interacting with Passbook Programmatically-Info.plist │ │ ├── Interacting with Passbook Programmatically-Prefix.pch │ │ ├── Interacting with Passbook Programmatically.entitlements │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Interacting with Passbook ProgrammaticallyTests │ │ ├── Interacting with Passbook ProgrammaticallyTests-Info.plist │ │ ├── Interacting_with_Passbook_ProgrammaticallyTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Preparing Your Passes for Digital Signature │ ├── Preparing Your Passes for Digital Signature.xcodeproj │ │ └── project.pbxproj │ ├── Preparing Your Passes for Digital Signature │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Certificates.p12 │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Preparing Your Passes for Digital Signature-Info.plist │ │ ├── Preparing Your Passes for Digital Signature-Prefix.pch │ │ ├── Preparing Your Passes for Digital Signature.entitlements │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ ├── exported-certificate │ │ ├── exported-key │ │ ├── main.m │ │ └── pass │ │ │ ├── background.png │ │ │ ├── background@2x.png │ │ │ ├── icon.png │ │ │ ├── icon@2x.png │ │ │ ├── logo.png │ │ │ ├── logo@2x.png │ │ │ ├── manifest.json │ │ │ ├── pass.json │ │ │ ├── pass.pkpass │ │ │ ├── signature │ │ │ ├── thumbnail.png │ │ │ └── thumbnail@2x.png │ └── Preparing Your Passes for Digital SignatureTests │ │ ├── Preparing Your Passes for Digital SignatureTests-Info.plist │ │ ├── Preparing_Your_Passes_for_Digital_SignatureTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings └── Providing Icons and Images for Passes │ ├── Providing Icons and Images for Passes.xcodeproj │ └── project.pbxproj │ ├── Providing Icons and Images for Passes │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── Providing Icons and Images for Passes-Info.plist │ ├── Providing Icons and Images for Passes-Prefix.pch │ ├── en.lproj │ │ └── InfoPlist.strings │ ├── main.m │ └── pass │ │ ├── background-568h@2x.png │ │ ├── background.png │ │ ├── background.psd │ │ ├── background@2x.png │ │ ├── icon.png │ │ ├── icon@2x.png │ │ ├── logo.png │ │ ├── logo@2x.png │ │ ├── manifest.json │ │ ├── pass.json │ │ ├── thumbnail.png │ │ └── thumbnail@2x.png │ └── Providing Icons and Images for PassesTests │ ├── Providing Icons and Images for PassesTests-Info.plist │ ├── Providing_Icons_and_Images_for_PassesTests.m │ └── en.lproj │ └── InfoPlist.strings ├── Chapter 3 ├── Autolayout and the Visual Format Language Introduction │ ├── Autolayout and the Visual Format Language Introduction.xcodeproj │ │ └── project.pbxproj │ └── Autolayout and the Visual Format Language Introduction │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Autolayout and the Visual Format Language Introduction-Info.plist │ │ ├── Autolayout and the Visual Format Language Introduction-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ ├── InfoPlist.strings │ │ └── ViewController.xib │ │ └── main.m ├── Configuring Autolayout Constraints in Interface Builder │ ├── Configuring Autolayout Constraints in Interface Builder.xcodeproj │ │ └── project.pbxproj │ ├── Configuring Autolayout Constraints in Interface Builder │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Configuring Autolayout Constraints in Interface Builder-Info.plist │ │ ├── Configuring Autolayout Constraints in Interface Builder-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Configuring Autolayout Constraints in Interface BuilderTests │ │ ├── Configuring Autolayout Constraints in Interface BuilderTests-Info.plist │ │ ├── Configuring_Autolayout_Constraints_in_Interface_BuilderTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Defining Horizontal and Vertical Constraints │ ├── Defining Horizontal and Vertical Constraints.xcodeproj │ │ └── project.pbxproj │ ├── Defining Horizontal and Vertical Constraints │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Defining Horizontal and Vertical Constraints-Info.plist │ │ ├── Defining Horizontal and Vertical Constraints-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Defining Horizontal and Vertical ConstraintsTests │ │ ├── Defining Horizontal and Vertical ConstraintsTests-Info.plist │ │ ├── Defining_Horizontal_and_Vertical_ConstraintsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Placing UI Components in the Center of the Screen │ ├── Placing UI Components in the Center of the Screen.xcodeproj │ │ └── project.pbxproj │ ├── Placing UI Components in the Center of the Screen │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Placing UI Components in the Center of the Screen-Info.plist │ │ ├── Placing UI Components in the Center of the Screen-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Placing UI Components in the Center of the ScreenTests │ │ ├── Placing UI Components in the Center of the ScreenTests-Info.plist │ │ ├── Placing_UI_Components_in_the_Center_of_the_ScreenTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings └── Utilizing Cross View Constraints │ ├── Utilizing Cross View Constraints.xcodeproj │ └── project.pbxproj │ ├── Utilizing Cross View Constraints │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ │ ├── Main_iPad.storyboard │ │ └── Main_iPhone.storyboard │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── Utilizing Cross View Constraints-Info.plist │ ├── Utilizing Cross View Constraints-Prefix.pch │ ├── ViewController.h │ ├── ViewController.m │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m │ └── Utilizing Cross View ConstraintsTests │ ├── Utilizing Cross View ConstraintsTests-Info.plist │ ├── Utilizing_Cross_View_ConstraintsTests.m │ └── en.lproj │ └── InfoPlist.strings ├── Chapter 4 ├── Constructing Headers and Footers in Table Views │ ├── Constructing Headers and Footers in Table Views.xcodeproj │ │ └── project.pbxproj │ ├── Constructing Headers and Footers in Table Views │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Constructing Headers and Footers in Table Views-Info.plist │ │ ├── Constructing Headers and Footers in Table Views-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Constructing Headers and Footers in Table ViewsTests │ │ ├── Constructing Headers and Footers in Table ViewsTests-Info.plist │ │ ├── Constructing_Headers_and_Footers_in_Table_ViewsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Creating Custom Table View Cell Accessories │ ├── Creating Custom Table View Cell Accessories.xcodeproj │ │ └── project.pbxproj │ ├── Creating Custom Table View Cell Accessories │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Creating Custom Table View Cell Accessories-Info.plist │ │ ├── Creating Custom Table View Cell Accessories-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Creating Custom Table View Cell AccessoriesTests │ │ ├── Creating Custom Table View Cell AccessoriesTests-Info.plist │ │ ├── Creating_Custom_Table_View_Cell_AccessoriesTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Deleting Cells and Sections from Table Views │ ├── Deleting Cells and Sections from Table Views.xcodeproj │ │ └── project.pbxproj │ ├── Deleting Cells and Sections from Table Views │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Deleting Cells and Sections from Table Views-Info.plist │ │ ├── Deleting Cells and Sections from Table Views-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Deleting Cells and Sections from Table ViewsTests │ │ ├── Deleting Cells and Sections from Table ViewsTests-Info.plist │ │ ├── Deleting_Cells_and_Sections_from_Table_ViewsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Displaying Context Menus on Table Views Cells │ ├── Displaying Context Menus on Table Views Cells.xcodeproj │ │ └── project.pbxproj │ ├── Displaying Context Menus on Table Views Cells │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Displaying Context Menus on Table Views Cells-Info.plist │ │ ├── Displaying Context Menus on Table Views Cells-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Displaying Context Menus on Table Views CellsTests │ │ ├── Displaying Context Menus on Table Views CellsTests-Info.plist │ │ ├── Displaying_Context_Menus_on_Table_Views_CellsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Displaying a Refresh Control for Table Views │ ├── Displaying a Refresh Control for Table Views.xcodeproj │ │ └── project.pbxproj │ ├── Displaying a Refresh Control for Table Views │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Displaying a Refresh Control for Table Views-Info.plist │ │ ├── Displaying a Refresh Control for Table Views-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Displaying a Refresh Control for Table ViewsTests │ │ ├── Displaying a Refresh Control for Table ViewsTests-Info.plist │ │ ├── Displaying_a_Refresh_Control_for_Table_ViewsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Enabling Swipe Deletion of Table View Cells │ ├── Enabling Swipe Deletion of Table View Cells.xcodeproj │ │ └── project.pbxproj │ ├── Enabling Swipe Deletion of Table View Cells │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Enabling Swipe Deletion of Table View Cells-Info.plist │ │ ├── Enabling Swipe Deletion of Table View Cells-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Enabling Swipe Deletion of Table View CellsTests │ │ ├── Enabling Swipe Deletion of Table View CellsTests-Info.plist │ │ ├── Enabling_Swipe_Deletion_of_Table_View_CellsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Introduction to Table Views │ ├── Introduction to Table Views.xcodeproj │ │ └── project.pbxproj │ ├── Introduction to Table Views │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Introduction to Table Views-Info.plist │ │ ├── Introduction to Table Views-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Introduction to Table ViewsTests │ │ ├── Introduction to Table ViewsTests-Info.plist │ │ ├── Introduction_to_Table_ViewsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Moving Cells and Sections in Table Views │ ├── Moving Cells and Sections in Table Views.xcodeproj │ │ └── project.pbxproj │ ├── Moving Cells and Sections in Table Views │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Moving Cells and Sections in Table Views-Info.plist │ │ ├── Moving Cells and Sections in Table Views-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Moving Cells and Sections in Table ViewsTests │ │ ├── Moving Cells and Sections in Table ViewsTests-Info.plist │ │ ├── Moving_Cells_and_Sections_in_Table_ViewsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Populating a Table View with Data │ ├── Populating a Table View with Data.xcodeproj │ │ └── project.pbxproj │ ├── Populating a Table View with Data │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Populating a Table View with Data-Info.plist │ │ ├── Populating a Table View with Data-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Populating a Table View with DataTests │ │ ├── Populating a Table View with DataTests-Info.plist │ │ ├── Populating_a_Table_View_with_DataTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Using Different Types of Accessories in a Table View Cell │ ├── Using Different Types of Accessories in a Table View Cell.xcodeproj │ │ └── project.pbxproj │ ├── Using Different Types of Accessories in a Table View Cell │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Using Different Types of Accessories in a Table View Cell-Info.plist │ │ ├── Using Different Types of Accessories in a Table View Cell-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Using Different Types of Accessories in a Table View CellTests │ │ ├── Using Different Types of Accessories in a Table View CellTests-Info.plist │ │ ├── Using_Different_Types_of_Accessories_in_a_Table_View_CellTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings └── Utilizing the UITableViewController for Easy Creation of Table Views │ ├── Utilizing the UITableViewController for Easy Creation of Table Views.xcodeproj │ └── project.pbxproj │ ├── Utilizing the UITableViewController for Easy Creation of Table Views │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── Utilizing the UITableViewController for Easy Creation of Table Views-Info.plist │ ├── Utilizing the UITableViewController for Easy Creation of Table Views-Prefix.pch │ ├── ViewController.h │ ├── ViewController.m │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m │ └── Utilizing the UITableViewController for Easy Creation of Table ViewsTests │ ├── Utilizing the UITableViewController for Easy Creation of Table ViewsTests-Info.plist │ ├── Utilizing_the_UITableViewController_for_Easy_Creation_of_Table_ViewsTests.m │ └── en.lproj │ └── InfoPlist.strings ├── Chapter 5 ├── Adding Custom Interactions to Collection Views │ ├── Adding Custom Interactions to Collection Views.xcodeproj │ │ └── project.pbxproj │ └── Adding Custom Interactions to Collection Views │ │ ├── 1.png │ │ ├── 1@2x.png │ │ ├── 2.png │ │ ├── 2@2x.png │ │ ├── 3.png │ │ ├── 3@2x.png │ │ ├── Adding Custom Interactions to Collection Views-Info.plist │ │ ├── Adding Custom Interactions to Collection Views-Prefix.pch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Default-568h@2x.png │ │ ├── Default.png │ │ ├── Default@2x.png │ │ ├── MyCollectionViewCell.h │ │ ├── MyCollectionViewCell.m │ │ ├── MyCollectionViewCell.xib │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ └── InfoPlist.strings │ │ └── main.m ├── Assigning a Data Source to a Collection View │ ├── Assigning a Data Source to a Collection View.xcodeproj │ │ └── project.pbxproj │ └── Assigning a Data Source to a Collection View │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Assigning a Data Source to a Collection View-Info.plist │ │ ├── Assigning a Data Source to a Collection View-Prefix.pch │ │ ├── Default-568h@2x.png │ │ ├── Default.png │ │ ├── Default@2x.png │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ └── InfoPlist.strings │ │ └── main.m ├── Constructing Collection Views │ ├── Constructing Collection Views.xcodeproj │ │ └── project.pbxproj │ └── Constructing Collection Views │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Constructing Collection Views-Info.plist │ │ ├── Constructing Collection Views-Prefix.pch │ │ ├── Default-568h@2x.png │ │ ├── Default.png │ │ ├── Default@2x.png │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ └── InfoPlist.strings │ │ └── main.m ├── Feeding Custom Cells to Collection Views Using Nib Files │ ├── Feeding Custom Cells to Collection Views Using Nib Files.xcodeproj │ │ └── project.pbxproj │ └── Feeding Custom Cells to Collection Views Using Nib Files │ │ ├── 1.png │ │ ├── 1@2x.png │ │ ├── 2.png │ │ ├── 2@2x.png │ │ ├── 3.png │ │ ├── 3@2x.png │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Default-568h@2x.png │ │ ├── Default.png │ │ ├── Default@2x.png │ │ ├── Feeding Custom Cells to Collection Views Using Nib Files-Info.plist │ │ ├── Feeding Custom Cells to Collection Views Using Nib Files-Prefix.pch │ │ ├── Icons.psd │ │ ├── MyCollectionViewCell.h │ │ ├── MyCollectionViewCell.m │ │ ├── MyCollectionViewCell.xib │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ └── InfoPlist.strings │ │ └── main.m ├── Handling Events in Collection Views │ ├── Handling Events in Collection Views.xcodeproj │ │ └── project.pbxproj │ └── Handling Events in Collection Views │ │ ├── 1.png │ │ ├── 1@2x.png │ │ ├── 2.png │ │ ├── 2@2x.png │ │ ├── 3.png │ │ ├── 3@2x.png │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Default-568h@2x.png │ │ ├── Default.png │ │ ├── Default@2x.png │ │ ├── Handling Events in Collection Views-Info.plist │ │ ├── Handling Events in Collection Views-Prefix.pch │ │ ├── MyCollectionViewCell.h │ │ ├── MyCollectionViewCell.m │ │ ├── MyCollectionViewCell.xib │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ └── InfoPlist.strings │ │ └── main.m ├── Providing Basic Content to a Collection View │ ├── Providing Basic Content to a Collection View.xcodeproj │ │ └── project.pbxproj │ └── Providing Basic Content to a Collection View │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Default-568h@2x.png │ │ ├── Default.png │ │ ├── Default@2x.png │ │ ├── Providing Basic Content to a Collection View-Info.plist │ │ ├── Providing Basic Content to a Collection View-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ └── InfoPlist.strings │ │ └── main.m ├── Providing Contextual Menus on Collection View Cells │ ├── Providing Contextual Menus on Collection View Cells.xcodeproj │ │ └── project.pbxproj │ └── Providing Contextual Menus on Collection View Cells │ │ ├── 1.png │ │ ├── 1@2x.png │ │ ├── 2.png │ │ ├── 2@2x.png │ │ ├── 3.png │ │ ├── 3@2x.png │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Default-568h@2x.png │ │ ├── Default.png │ │ ├── Default@2x.png │ │ ├── MyCollectionViewCell.h │ │ ├── MyCollectionViewCell.m │ │ ├── MyCollectionViewCell.xib │ │ ├── Providing Contextual Menus on Collection View Cells-Info.plist │ │ ├── Providing Contextual Menus on Collection View Cells-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ └── InfoPlist.strings │ │ └── main.m ├── Providing Header and Footer in a Flow Layout │ ├── Providing Header and Footer in a Flow Layout.xcodeproj │ │ └── project.pbxproj │ └── Providing Header and Footer in a Flow Layout │ │ ├── 1.png │ │ ├── 1@2x.png │ │ ├── 2.png │ │ ├── 2@2x.png │ │ ├── 3.png │ │ ├── 3@2x.png │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Default-568h@2x.png │ │ ├── Default.png │ │ ├── Default@2x.png │ │ ├── Footer.h │ │ ├── Footer.m │ │ ├── Footer.xib │ │ ├── Header.h │ │ ├── Header.m │ │ ├── Header.xib │ │ ├── MyCollectionViewCell.h │ │ ├── MyCollectionViewCell.m │ │ ├── MyCollectionViewCell.xib │ │ ├── Providing Header and Footer in a Flow Layout-Info.plist │ │ ├── Providing Header and Footer in a Flow Layout-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ └── InfoPlist.strings │ │ └── main.m └── Providing a Flow Layout to a Collection View │ ├── Providing a Flow Layout to a Collection View.xcodeproj │ └── project.pbxproj │ └── Providing a Flow Layout to a Collection View │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Default-568h@2x.png │ ├── Default.png │ ├── Default@2x.png │ ├── Providing a Flow Layout to a Collection View-Info.plist │ ├── Providing a Flow Layout to a Collection View-Prefix.pch │ ├── ViewController.h │ ├── ViewController.m │ ├── en.lproj │ └── InfoPlist.strings │ └── main.m ├── Chapter 6 ├── Adding a Navigation Controller to a Storyboard │ ├── Adding a Navigation Controller to a Storyboard.xcodeproj │ │ └── project.pbxproj │ ├── Adding a Navigation Controller to a Storyboard │ │ ├── Adding a Navigation Controller to a Storyboard-Info.plist │ │ ├── Adding a Navigation Controller to a Storyboard-Prefix.pch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Adding a Navigation Controller to a StoryboardTests │ │ ├── Adding a Navigation Controller to a StoryboardTests-Info.plist │ │ ├── Adding_a_Navigation_Controller_to_a_StoryboardTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Adding a Tab Bar Controller to a Storyboard │ ├── Adding a Tab Bar Controller to a Storyboard.xcodeproj │ │ └── project.pbxproj │ ├── Adding a Tab Bar Controller to a Storyboard │ │ ├── Adding a Tab Bar Controller to a Storyboard-Info.plist │ │ ├── Adding a Tab Bar Controller to a Storyboard-Prefix.pch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Adding a Tab Bar Controller to a StoryboardTests │ │ ├── Adding a Tab Bar Controller to a StoryboardTests-Info.plist │ │ ├── Adding_a_Tab_Bar_Controller_to_a_StoryboardTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Introducing Custom Segue Transitions to Your Storyboard │ ├── Introducing Custom Segue Transitions to Your Storyboard.xcodeproj │ │ └── project.pbxproj │ ├── Introducing Custom Segue Transitions to Your Storyboard │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Introducing Custom Segue Transitions to Your Storyboard-Info.plist │ │ ├── Introducing Custom Segue Transitions to Your Storyboard-Prefix.pch │ │ ├── MySegue.h │ │ ├── MySegue.m │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Introducing Custom Segue Transitions to Your StoryboardTests │ │ ├── Introducing Custom Segue Transitions to Your StoryboardTests-Info.plist │ │ ├── Introducing_Custom_Segue_Transitions_to_Your_StoryboardTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Passing Data From One Screen to Another │ ├── Passing Data From One Screen to Another.xcodeproj │ │ └── project.pbxproj │ ├── Passing Data From One Screen to Another │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Passing Data From One Screen to Another-Info.plist │ │ ├── Passing Data From One Screen to Another-Prefix.pch │ │ ├── SecondViewController.h │ │ ├── SecondViewController.m │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Passing Data From One Screen to AnotherTests │ │ ├── Passing Data From One Screen to AnotherTests-Info.plist │ │ ├── Passing_Data_From_One_Screen_to_AnotherTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings └── Placing Images and Other UI Components on Storyboards │ ├── Placing Images and Other UI Components on Storyboards.xcodeproj │ └── project.pbxproj │ ├── Placing Images and Other UI Components on Storyboards │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ │ ├── Main_iPad.storyboard │ │ └── Main_iPhone.storyboard │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ ├── LaunchImage.launchimage │ │ │ └── Contents.json │ │ └── MyImage.imageset │ │ │ ├── Contents.json │ │ │ └── MyImage.png │ ├── Placing Images and Other UI Components on Storyboards-Info.plist │ ├── Placing Images and Other UI Components on Storyboards-Prefix.pch │ ├── ViewController.h │ ├── ViewController.m │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m │ └── Placing Images and Other UI Components on StoryboardsTests │ ├── Placing Images and Other UI Components on StoryboardsTests-Info.plist │ ├── Placing_Images_and_Other_UI_Components_on_StoryboardsTests.m │ └── en.lproj │ └── InfoPlist.strings ├── Chapter 7 ├── Accessing Variables in Block Objects │ ├── Accessing Variables in Block Objects.xcodeproj │ │ └── project.pbxproj │ ├── Accessing Variables in Block Objects │ │ ├── Accessing Variables in Block Objects-Info.plist │ │ ├── Accessing Variables in Block Objects-Prefix.pch │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Accessing Variables in Block ObjectsTests │ │ ├── Accessing Variables in Block ObjectsTests-Info.plist │ │ ├── Accessing_Variables_in_Block_ObjectsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Constructing Block Objects │ ├── Constructing Block Objects.xcodeproj │ │ └── project.pbxproj │ ├── Constructing Block Objects │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Constructing Block Objects-Info.plist │ │ ├── Constructing Block Objects-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Constructing Block ObjectsTests │ │ ├── Constructing Block ObjectsTests-Info.plist │ │ ├── Constructing_Block_ObjectsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Constructing Your Own Dispatch Queues with GCD │ ├── Constructing Your Own Dispatch Queues with GCD.xcodeproj │ │ └── project.pbxproj │ ├── Constructing Your Own Dispatch Queues with GCD │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Constructing Your Own Dispatch Queues with GCD-Info.plist │ │ ├── Constructing Your Own Dispatch Queues with GCD-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Constructing Your Own Dispatch Queues with GCDTests │ │ ├── Constructing Your Own Dispatch Queues with GCDTests-Info.plist │ │ ├── Constructing_Your_Own_Dispatch_Queues_with_GCDTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Creating Concurrency with Threads │ ├── Creating Concurrency with Threads.xcodeproj │ │ └── project.pbxproj │ ├── Creating Concurrency with Threads │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Creating Concurrency with Threads-Info.plist │ │ ├── Creating Concurrency with Threads-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── MacBookAir.png │ │ ├── MacBookAir@2x.png │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Creating Concurrency with ThreadsTests │ │ ├── Creating Concurrency with ThreadsTests-Info.plist │ │ ├── Creating_Concurrency_with_ThreadsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Creating Dependency Between Operations │ ├── Creating Dependency Between Operations.xcodeproj │ │ └── project.pbxproj │ ├── Creating Dependency Between Operations │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Creating Dependency Between Operations-Info.plist │ │ ├── Creating Dependency Between Operations-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Creating Dependency Between OperationsTests │ │ ├── Creating Dependency Between OperationsTests-Info.plist │ │ ├── Creating_Dependency_Between_OperationsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Creating Timers │ ├── Creating Timers.xcodeproj │ │ └── project.pbxproj │ ├── Creating Timers │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Creating Timers-Info.plist │ │ ├── Creating Timers-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Creating TimersTests │ │ ├── Creating TimersTests-Info.plist │ │ ├── Creating_TimersTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Exiting Threads and Timers │ ├── Exiting Threads and Timers.xcodeproj │ │ └── project.pbxproj │ ├── Exiting Threads and Timers │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Exiting Threads and Timers-Info.plist │ │ ├── Exiting Threads and Timers-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Exiting Threads and TimersTests │ │ ├── Exiting Threads and TimersTests-Info.plist │ │ ├── Exiting_Threads_and_TimersTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Grouping Tasks Together with GCD │ ├── Grouping Tasks Together with GCD.xcodeproj │ │ └── project.pbxproj │ ├── Grouping Tasks Together with GCD │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Grouping Tasks Together with GCD-Info.plist │ │ ├── Grouping Tasks Together with GCD-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Grouping Tasks Together with GCDTests │ │ ├── Grouping Tasks Together with GCDTests-Info.plist │ │ ├── Grouping_Tasks_Together_with_GCDTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Introduction to Concurrency │ ├── Introduction to Concurrency.xcodeproj │ │ └── project.pbxproj │ ├── Introduction to Concurrency │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Introduction to Concurrency-Info.plist │ │ ├── Introduction to Concurrency-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Introduction to ConcurrencyTests │ │ ├── Introduction to ConcurrencyTests-Info.plist │ │ ├── Introduction_to_ConcurrencyTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Invoking Background Methods │ ├── Invoking Background Methods.xcodeproj │ │ └── project.pbxproj │ ├── Invoking Background Methods │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Invoking Background Methods-Info.plist │ │ ├── Invoking Background Methods-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Invoking Background MethodsTests │ │ ├── Invoking Background MethodsTests-Info.plist │ │ ├── Invoking_Background_MethodsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Invoking Block Objects │ ├── Invoking Block Objects.xcodeproj │ │ └── project.pbxproj │ ├── Invoking Block Objects │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Invoking Block Objects-Info.plist │ │ ├── Invoking Block Objects-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Invoking Block ObjectsTests │ │ ├── Invoking Block ObjectsTests-Info.plist │ │ ├── Invoking_Block_ObjectsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Performing Non-UI Related Tasks Asynchronously with GCD │ ├── Performing Non-UI Related Tasks Asynchronously with GCD.xcodeproj │ │ └── project.pbxproj │ ├── Performing Non-UI Related Tasks Asynchronously with GCD │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Performing Non-UI Related Tasks Asynchronously with GCD-Info.plist │ │ ├── Performing Non-UI Related Tasks Asynchronously with GCD-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Performing Non-UI Related Tasks Asynchronously with GCDTests │ │ ├── Performing Non-UI Related Tasks Asynchronously with GCDTests-Info.plist │ │ ├── Performing_Non_UI_Related_Tasks_Asynchronously_with_GCDTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Performing Non-UI-Related Tasks Synchronously with GCD │ ├── Performing Non-UI-Related Tasks Synchronously with GCD.xcodeproj │ │ └── project.pbxproj │ ├── Performing Non-UI-Related Tasks Synchronously with GCD │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Performing Non-UI-Related Tasks Synchronously with GCD-Info.plist │ │ ├── Performing Non-UI-Related Tasks Synchronously with GCD-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Performing Non-UI-Related Tasks Synchronously with GCDTests │ │ ├── Performing Non-UI-Related Tasks Synchronously with GCDTests-Info.plist │ │ ├── Performing_Non_UI_Related_Tasks_Synchronously_with_GCDTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Performing Tasks After a Delay with GCD │ ├── Performing Tasks After a Delay with GCD.xcodeproj │ │ └── project.pbxproj │ ├── Performing Tasks After a Delay with GCD │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Performing Tasks After a Delay with GCD-Info.plist │ │ ├── Performing Tasks After a Delay with GCD-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Performing Tasks After a Delay with GCDTests │ │ ├── Performing Tasks After a Delay with GCDTests-Info.plist │ │ ├── Performing_Tasks_After_a_Delay_with_GCDTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Performing UI-Related Tasks with GCD │ ├── Performing UI-Related Tasks with GCD.xcodeproj │ │ └── project.pbxproj │ ├── Performing UI-Related Tasks with GCD │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Performing UI-Related Tasks with GCD-Info.plist │ │ ├── Performing UI-Related Tasks with GCD-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Performing UI-Related Tasks with GCDTests │ │ ├── Performing UI-Related Tasks with GCDTests-Info.plist │ │ ├── Performing_UI_Related_Tasks_with_GCDTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Performing a Task Only Once with GCD │ ├── Performing a Task Only Once with GCD.xcodeproj │ │ └── project.pbxproj │ ├── Performing a Task Only Once with GCD │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── MySingleton.h │ │ ├── MySingleton.m │ │ ├── Performing a Task Only Once with GCD-Info.plist │ │ ├── Performing a Task Only Once with GCD-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Performing a Task Only Once with GCDTests │ │ ├── Performing a Task Only Once with GCDTests-Info.plist │ │ ├── Performing_a_Task_Only_Once_with_GCDTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Running Tasks Asynchronously with Operations │ ├── Running Tasks Asynchronously with Operations.xcodeproj │ │ └── project.pbxproj │ ├── Running Tasks Asynchronously with Operations │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Running Tasks Asynchronously with Operations-Info.plist │ │ ├── Running Tasks Asynchronously with Operations-Prefix.pch │ │ ├── SimpleOperation.h │ │ ├── SimpleOperation.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Running Tasks Asynchronously with OperationsTests │ │ ├── Running Tasks Asynchronously with OperationsTests-Info.plist │ │ ├── Running_Tasks_Asynchronously_with_OperationsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings └── Running Tasks Synchronously with Operations │ ├── Running Tasks Synchronously with Operations.xcodeproj │ └── project.pbxproj │ ├── Running Tasks Synchronously with Operations │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── CountingOperation.h │ ├── CountingOperation.m │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── Running Tasks Synchronously with Operations-Info.plist │ ├── Running Tasks Synchronously with Operations-Prefix.pch │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m │ └── Running Tasks Synchronously with OperationsTests │ ├── Running Tasks Synchronously with OperationsTests-Info.plist │ ├── Running_Tasks_Synchronously_with_OperationsTests.m │ └── en.lproj │ └── InfoPlist.strings ├── Chapter 8 ├── Deleting Exiting Values in Keychain │ ├── Deleting Exiting Values in Keychain.xcodeproj │ │ └── project.pbxproj │ ├── Deleting Exiting Values in Keychain │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Deleting Exiting Values in Keychain-Info.plist │ │ ├── Deleting Exiting Values in Keychain-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Deleting Exiting Values in KeychainTests │ │ ├── Deleting Exiting Values in KeychainTests-Info.plist │ │ ├── Deleting_Exiting_Values_in_KeychainTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Finding Values in the Keychain │ ├── Finding Values in the Keychain.xcodeproj │ │ └── project.pbxproj │ └── Finding Values in the Keychain │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Default-568h@2x.png │ │ ├── Default.png │ │ ├── Default@2x.png │ │ ├── Finding Values in the Keychain-Info.plist │ │ ├── Finding Values in the Keychain-Prefix.pch │ │ ├── en.lproj │ │ └── InfoPlist.strings │ │ └── main.m ├── Securing Your User Interface │ ├── Securing Your User Interface.xcodeproj │ │ └── project.pbxproj │ ├── Securing Your User Interface │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Securing Your User Interface-Info.plist │ │ ├── Securing Your User Interface-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Securing Your User InterfaceTests │ │ ├── Securing Your User InterfaceTests-Info.plist │ │ ├── Securing_Your_User_InterfaceTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Sharing Keychain Data Between Multiple Apps - Reading │ ├── Sharing Keychain Data Between Multiple Apps - Reading.xcodeproj │ │ └── project.pbxproj │ ├── Sharing Keychain Data Between Multiple Apps - Reading │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Entitlements.plist │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Sharing Keychain Data Between Multiple Apps - Reading-Info.plist │ │ ├── Sharing Keychain Data Between Multiple Apps - Reading-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Sharing Keychain Data Between Multiple Apps - ReadingTests │ │ ├── Sharing Keychain Data Between Multiple Apps - ReadingTests-Info.plist │ │ ├── Sharing_Keychain_Data_Between_Multiple_Apps___ReadingTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Sharing Keychain Data Between Multiple Apps - Writing │ ├── Sharing Keychain Data Between Multiple Apps - Writing.xcodeproj │ │ └── project.pbxproj │ ├── Sharing Keychain Data Between Multiple Apps - Writing │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Entitlements.plist │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Sharing Keychain Data Between Multiple Apps - Writing-Info.plist │ │ ├── Sharing Keychain Data Between Multiple Apps - Writing-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Sharing Keychain Data Between Multiple Apps - WritingTests │ │ ├── Sharing Keychain Data Between Multiple Apps - WritingTests-Info.plist │ │ ├── Sharing_Keychain_Data_Between_Multiple_Apps___WritingTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Storing Files Securely in the App Sandbox │ ├── Storing Files Securely in the App Sandbox.xcodeproj │ │ └── project.pbxproj │ ├── Storing Files Securely in the App Sandbox │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Entitlements.plist │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Storing Files Securely in the App Sandbox-Info.plist │ │ ├── Storing Files Securely in the App Sandbox-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Storing Files Securely in the App SandboxTests │ │ ├── Storing Files Securely in the App SandboxTests-Info.plist │ │ ├── Storing_Files_Securely_in_the_App_SandboxTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Storing Values in the Keychain │ ├── Storing Values in the Keychain.xcodeproj │ │ └── project.pbxproj │ └── Storing Values in the Keychain │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Default-568h@2x.png │ │ ├── Default.png │ │ ├── Default@2x.png │ │ ├── Storing Values in the Keychain-Info.plist │ │ ├── Storing Values in the Keychain-Prefix.pch │ │ ├── en.lproj │ │ └── InfoPlist.strings │ │ └── main.m ├── Updating Existing Values in the Keychain │ ├── Updating Existing Values in the Keychain.xcodeproj │ │ └── project.pbxproj │ └── Updating Existing Values in the Keychain │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Default-568h@2x.png │ │ ├── Default.png │ │ ├── Default@2x.png │ │ ├── Updating Existing Values in the Keychain-Info.plist │ │ ├── Updating Existing Values in the Keychain-Prefix.pch │ │ ├── en.lproj │ │ └── InfoPlist.strings │ │ └── main.m ├── Writing to and Reading Keychain Data from iCloud - Reading │ ├── Writing to and Reading Keychain Data from iCloud - Reading.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ └── contents.xcworkspacedata │ ├── Writing to and Reading Keychain Data from iCloud - Reading │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Entitlements.plist │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Writing to and Reading Keychain Data from iCloud - Reading-Info.plist │ │ ├── Writing to and Reading Keychain Data from iCloud - Reading-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Writing to and Reading Keychain Data from iCloud - ReadingTests │ │ ├── Writing to and Reading Keychain Data from iCloud - ReadingTests-Info.plist │ │ ├── Writing_to_and_Reading_Keychain_Data_from_iCloud___ReadingTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings └── Writing to and Reading Keychain Data from iCloud - Writing │ ├── Writing to and Reading Keychain Data from iCloud - Writing.xcodeproj │ └── project.pbxproj │ ├── Writing to and Reading Keychain Data from iCloud - Writing │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Entitlements.plist │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── Writing to and Reading Keychain Data from iCloud - Writing-Info.plist │ ├── Writing to and Reading Keychain Data from iCloud - Writing-Prefix.pch │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m │ └── Writing to and Reading Keychain Data from iCloud - WritingTests │ ├── Writing to and Reading Keychain Data from iCloud - WritingTests-Info.plist │ ├── Writing_to_and_Reading_Keychain_Data_from_iCloud___WritingTests.m │ └── en.lproj │ └── InfoPlist.strings ├── Chapter 9 ├── Converting Longitude and Latitude to a Meaningful Address │ ├── Converting Longitude and Latitude to a Meaningful Address.xcodeproj │ │ └── project.pbxproj │ ├── Converting Longitude and Latitude to a Meaningful Address │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Converting Longitude and Latitude to a Meaningful Address-Info.plist │ │ ├── Converting Longitude and Latitude to a Meaningful Address-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Converting Longitude and Latitude to a Meaningful AddressTests │ │ ├── Converting Longitude and Latitude to a Meaningful AddressTests-Info.plist │ │ ├── Converting_Longitude_and_Latitude_to_a_Meaningful_AddressTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Converting Meaningful Addresses to Longitude and Latitude │ ├── Converting Meaningful Addresses to Longitude and Latitude.xcodeproj │ │ └── project.pbxproj │ ├── Converting Meaningful Addresses to Longitude and Latitude │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Converting Meaningful Addresses to Longitude and Latitude-Info.plist │ │ ├── Converting Meaningful Addresses to Longitude and Latitude-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Converting Meaningful Addresses to Longitude and LatitudeTests │ │ ├── Converting Meaningful Addresses to Longitude and LatitudeTests-Info.plist │ │ ├── Converting_Meaningful_Addresses_to_Longitude_and_LatitudeTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Creating a Map View │ ├── Creating a Map View.xcodeproj │ │ └── project.pbxproj │ ├── Creating a Map View │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Creating a Map View-Info.plist │ │ ├── Creating a Map View-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Creating a Map ViewTests │ │ ├── Creating a Map ViewTests-Info.plist │ │ ├── Creating_a_Map_ViewTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Displaying Custom Pins on a Map View │ ├── Displaying Custom Pins on a Map View.xcodeproj │ │ └── project.pbxproj │ ├── Displaying Custom Pins on a Map View │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Displaying Custom Pins on a Map View-Info.plist │ │ ├── Displaying Custom Pins on a Map View-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ ├── BluePin.imageset │ │ │ │ ├── BluePin.png │ │ │ │ ├── BluePin@2x.png │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── MyAnnotation.h │ │ ├── MyAnnotation.m │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Displaying Custom Pins on a Map ViewTests │ │ ├── Displaying Custom Pins on a Map ViewTests-Info.plist │ │ ├── Displaying_Custom_Pins_on_a_Map_ViewTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Displaying Directions on The Map │ ├── Displaying Directions on The Map.xcodeproj │ │ └── project.pbxproj │ ├── Displaying Directions on The Map │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Displaying Directions on The Map-Info.plist │ │ ├── Displaying Directions on The Map-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Displaying Directions on The MapTests │ │ ├── Displaying Directions on The MapTests-Info.plist │ │ ├── Displaying_Directions_on_The_MapTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Displaying Pins on a Map View │ ├── Displaying Pins on a Map View.xcodeproj │ │ └── project.pbxproj │ ├── Displaying Pins on a Map View │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Displaying Pins on a Map View-Info.plist │ │ ├── Displaying Pins on a Map View-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── MyAnnotation.h │ │ ├── MyAnnotation.m │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Displaying Pins on a Map ViewTests │ │ ├── Displaying Pins on a Map ViewTests-Info.plist │ │ ├── Displaying_Pins_on_a_Map_ViewTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Displaying Pins with Different Colors on a Map View │ ├── Displaying Pins with Different Colors on a Map View.xcodeproj │ │ └── project.pbxproj │ ├── Displaying Pins with Different Colors on a Map View │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Displaying Pins with Different Colors on a Map View-Info.plist │ │ ├── Displaying Pins with Different Colors on a Map View-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── MyAnnotation.h │ │ ├── MyAnnotation.m │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Displaying Pins with Different Colors on a Map ViewTests │ │ ├── Displaying Pins with Different Colors on a Map ViewTests-Info.plist │ │ ├── Displaying_Pins_with_Different_Colors_on_a_Map_ViewTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Handling the Events of a Map View │ ├── Handling the Events of a Map View.xcodeproj │ │ └── project.pbxproj │ ├── Handling the Events of a Map View │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Handling the Events of a Map View-Info.plist │ │ ├── Handling the Events of a Map View-Prefix.pch │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Handling the Events of a Map ViewTests │ │ ├── Handling the Events of a Map ViewTests-Info.plist │ │ ├── Handling_the_Events_of_a_Map_ViewTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Introduction to Core Location and Maps │ ├── Introduction to Core Location and Maps.xcodeproj │ │ └── project.pbxproj │ ├── Introduction to Core Location and Maps │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Introduction to Core Location and Maps-Info.plist │ │ ├── Introduction to Core Location and Maps-Prefix.pch │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Introduction to Core Location and MapsTests │ │ ├── Introduction to Core Location and MapsTests-Info.plist │ │ ├── Introduction_to_Core_Location_and_MapsTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings ├── Pinpointing the Location of a Device │ ├── Pinpointing the Location of a Device.xcodeproj │ │ └── project.pbxproj │ ├── Pinpointing the Location of a Device │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ ├── Main_iPad.storyboard │ │ │ └── Main_iPhone.storyboard │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.launchimage │ │ │ │ └── Contents.json │ │ ├── Pinpointing the Location of a Device-Info.plist │ │ ├── Pinpointing the Location of a Device-Prefix.pch │ │ ├── ViewController.h │ │ ├── ViewController.m │ │ ├── en.lproj │ │ │ └── InfoPlist.strings │ │ └── main.m │ └── Pinpointing the Location of a DeviceTests │ │ ├── Pinpointing the Location of a DeviceTests-Info.plist │ │ ├── Pinpointing_the_Location_of_a_DeviceTests.m │ │ └── en.lproj │ │ └── InfoPlist.strings └── Searching on a Map View │ ├── Searching on a Map View.xcodeproj │ └── project.pbxproj │ ├── Searching on a Map View │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Base.lproj │ │ ├── Main_iPad.storyboard │ │ └── Main_iPhone.storyboard │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── Searching on a Map View-Info.plist │ ├── Searching on a Map View-Prefix.pch │ ├── ViewController.h │ ├── ViewController.m │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m │ └── Searching on a Map ViewTests │ ├── Searching on a Map ViewTests-Info.plist │ ├── Searching_on_a_Map_ViewTests.m │ └── en.lproj │ └── InfoPlist.strings └── README.md /.gitignore: -------------------------------------------------------------------------------- 1 | # Xcode 2 | .DS_Store 3 | */build/* 4 | *.pbxuser 5 | !default.pbxuser 6 | *.mode1v3 7 | !default.mode1v3 8 | *.mode2v3 9 | !default.mode2v3 10 | *.perspectivev3 11 | !default.perspectivev3 12 | xcuserdata 13 | profile 14 | *.moved-aside 15 | DerivedData 16 | .idea/ 17 | *.hmap 18 | *.xccheckout 19 | 20 | #CocoaPods 21 | Pods 22 | -------------------------------------------------------------------------------- /Chapter 1/Accepting User Text Input with UITextField/Accepting User Text Input with UITextField/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Accepting User Text Input with UITextField/Accepting User Text Input with UITextFieldTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Adding Buttons to Navigation Bars Using UIBarButtonItem/Adding Buttons to Navigation Bars Using UIBarButtonItem/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Adding Buttons to Navigation Bars Using UIBarButtonItem/Adding Buttons to Navigation Bars Using UIBarButtonItemTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Adding Buttons to the User Interface with UIButton/Adding Buttons to the User Interface with UIButton/Button.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Adding Buttons to the User Interface with UIButton/Adding Buttons to the User Interface with UIButton/Button.psd -------------------------------------------------------------------------------- /Chapter 1/Adding Buttons to the User Interface with UIButton/Adding Buttons to the User Interface with UIButton/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Adding Buttons to the User Interface with UIButton/Adding Buttons to the User Interface with UIButtonTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Adding Object Subscripting Support to Your Own Classes/Adding Object Subscripting Support to Your Own Classes/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Adding Object Subscripting Support to Your Own Classes/Adding Object Subscripting Support to Your Own ClassesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Chapter 1-Introduction/Chapter 1-Introduction/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Chapter 1-Introduction/Chapter 1-Introduction/Default-568h@2x.png -------------------------------------------------------------------------------- /Chapter 1/Chapter 1-Introduction/Chapter 1-Introduction/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Chapter 1-Introduction/Chapter 1-Introduction/Default.png -------------------------------------------------------------------------------- /Chapter 1/Chapter 1-Introduction/Chapter 1-Introduction/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Chapter 1-Introduction/Chapter 1-Introduction/Default@2x.png -------------------------------------------------------------------------------- /Chapter 1/Chapter 1-Introduction/Chapter 1-Introduction/Jaguar.m: -------------------------------------------------------------------------------- 1 | // 2 | // Jaguar.m 3 | // Chapter 1-Introduction 4 | // 5 | // Created by Vandad NP on 07/04/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import "Jaguar.h" 10 | 11 | @implementation Jaguar 12 | 13 | 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /Chapter 1/Chapter 1-Introduction/Chapter 1-Introduction/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Constructing and Displaying Styled Texts/Constructing and Displaying Styled Texts/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Constructing and Displaying Styled Texts/Constructing and Displaying Styled TextsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Creating Scrollable Content with UIScrollView/Creating Scrollable Content with UIScrollView/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Creating Scrollable Content with UIScrollView/Creating Scrollable Content with UIScrollViewTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Creating and Using Switches with UISwitch/Creating and Using Switches with UISwitch/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Creating and Using Switches with UISwitch/Creating and Using Switches with UISwitchTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Customizing the UILabel/Customizing the UILabel/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Customizing the UILabel 4 | // 5 | // Created by Vandad NP on 23/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 1/Customizing the UILabel/Customizing the UILabel/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Customizing the UILabel/Customizing the UILabelTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Customizing the UISlider/Customizing the UISlider/Images.xcassets/MaximumTrack.imageset/MaximumTrack.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Customizing the UISlider/Customizing the UISlider/Images.xcassets/MaximumTrack.imageset/MaximumTrack.png -------------------------------------------------------------------------------- /Chapter 1/Customizing the UISlider/Customizing the UISlider/Images.xcassets/MaximumTrack.imageset/MaximumTrack@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Customizing the UISlider/Customizing the UISlider/Images.xcassets/MaximumTrack.imageset/MaximumTrack@2x.png -------------------------------------------------------------------------------- /Chapter 1/Customizing the UISlider/Customizing the UISlider/Images.xcassets/MaximumValue.imageset/MaximumValue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Customizing the UISlider/Customizing the UISlider/Images.xcassets/MaximumValue.imageset/MaximumValue.png -------------------------------------------------------------------------------- /Chapter 1/Customizing the UISlider/Customizing the UISlider/Images.xcassets/MaximumValue.imageset/MaximumValue@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Customizing the UISlider/Customizing the UISlider/Images.xcassets/MaximumValue.imageset/MaximumValue@2x.png -------------------------------------------------------------------------------- /Chapter 1/Customizing the UISlider/Customizing the UISlider/Images.xcassets/MinimumTrack.imageset/MinimumTrack.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Customizing the UISlider/Customizing the UISlider/Images.xcassets/MinimumTrack.imageset/MinimumTrack.png -------------------------------------------------------------------------------- /Chapter 1/Customizing the UISlider/Customizing the UISlider/Images.xcassets/MinimumTrack.imageset/MinimumTrack@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Customizing the UISlider/Customizing the UISlider/Images.xcassets/MinimumTrack.imageset/MinimumTrack@2x.png -------------------------------------------------------------------------------- /Chapter 1/Customizing the UISlider/Customizing the UISlider/Images.xcassets/MinimumValue.imageset/MinimumValue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Customizing the UISlider/Customizing the UISlider/Images.xcassets/MinimumValue.imageset/MinimumValue.png -------------------------------------------------------------------------------- /Chapter 1/Customizing the UISlider/Customizing the UISlider/Images.xcassets/MinimumValue.imageset/MinimumValue@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Customizing the UISlider/Customizing the UISlider/Images.xcassets/MinimumValue.imageset/MinimumValue@2x.png -------------------------------------------------------------------------------- /Chapter 1/Customizing the UISlider/Customizing the UISlider/Images.xcassets/Thumb.imageset/Thumb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Customizing the UISlider/Customizing the UISlider/Images.xcassets/Thumb.imageset/Thumb.png -------------------------------------------------------------------------------- /Chapter 1/Customizing the UISlider/Customizing the UISlider/Images.xcassets/Thumb.imageset/Thumb@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Customizing the UISlider/Customizing the UISlider/Images.xcassets/Thumb.imageset/Thumb@2x.png -------------------------------------------------------------------------------- /Chapter 1/Customizing the UISlider/Customizing the UISlider/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Customizing the UISlider 4 | // 5 | // Created by Vandad NP on 22/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 1/Customizing the UISlider/Customizing the UISlider/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Customizing the UISlider/Customizing the UISliderTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Customizing the UISwitch/Customizing the UISwitch/Images.xcassets/Off.imageset/Off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Customizing the UISwitch/Customizing the UISwitch/Images.xcassets/Off.imageset/Off.png -------------------------------------------------------------------------------- /Chapter 1/Customizing the UISwitch/Customizing the UISwitch/Images.xcassets/Off.imageset/Off@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Customizing the UISwitch/Customizing the UISwitch/Images.xcassets/Off.imageset/Off@2x.png -------------------------------------------------------------------------------- /Chapter 1/Customizing the UISwitch/Customizing the UISwitch/Images.xcassets/On.imageset/On.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Customizing the UISwitch/Customizing the UISwitch/Images.xcassets/On.imageset/On.png -------------------------------------------------------------------------------- /Chapter 1/Customizing the UISwitch/Customizing the UISwitch/Images.xcassets/On.imageset/On@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Customizing the UISwitch/Customizing the UISwitch/Images.xcassets/On.imageset/On@2x.png -------------------------------------------------------------------------------- /Chapter 1/Customizing the UISwitch/Customizing the UISwitch/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Customizing the UISwitch 4 | // 5 | // Created by Vandad NP on 22/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 1/Customizing the UISwitch/Customizing the UISwitch/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Customizing the UISwitch/Customizing the UISwitchTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Displaying Alerts with UIAlertView/Displaying Alerts with UIAlertView/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Displaying Alerts with UIAlertView/Displaying Alerts with UIAlertViewTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Displaying Images with UIImageView/Displaying Images with UIImageView/Images.xcassets/MacBookAir.imageset/MacBookAir.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Displaying Images with UIImageView/Displaying Images with UIImageView/Images.xcassets/MacBookAir.imageset/MacBookAir.png -------------------------------------------------------------------------------- /Chapter 1/Displaying Images with UIImageView/Displaying Images with UIImageView/Images.xcassets/MacBookAir.imageset/MacBookAir@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Displaying Images with UIImageView/Displaying Images with UIImageView/Images.xcassets/MacBookAir.imageset/MacBookAir@2x.png -------------------------------------------------------------------------------- /Chapter 1/Displaying Images with UIImageView/Displaying Images with UIImageView/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Displaying Images with UIImageView/Displaying Images with UIImageViewTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Displaying Long Lines of Text with UITextView/Displaying Long Lines of Text with UITextView/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Displaying Long Lines of Text with UITextView/Displaying Long Lines of Text with UITextViewTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Displaying Popovers with UIPopoverController/Displaying Popovers with UIPopoverController/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Displaying Popovers with UIPopoverController/Displaying Popovers with UIPopoverControllerTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Displaying Progress with UIProgressView/Displaying Progress with UIProgressView/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Displaying Progress with UIProgressView/Displaying Progress with UIProgressViewTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Displaying Static Text with UILabel/Displaying Static Text with UILabel/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Displaying Static Text with UILabel/Displaying Static Text with UILabelTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Displaying an Image on a Navigation Bar/Displaying an Image on a Navigation Bar/Images.xcassets/Logo.imageset/Logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Displaying an Image on a Navigation Bar/Displaying an Image on a Navigation Bar/Images.xcassets/Logo.imageset/Logo.png -------------------------------------------------------------------------------- /Chapter 1/Displaying an Image on a Navigation Bar/Displaying an Image on a Navigation Bar/Images.xcassets/Logo.imageset/Logo@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Displaying an Image on a Navigation Bar/Displaying an Image on a Navigation Bar/Images.xcassets/Logo.imageset/Logo@2x.png -------------------------------------------------------------------------------- /Chapter 1/Displaying an Image on a Navigation Bar/Displaying an Image on a Navigation Bar/Logo.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Displaying an Image on a Navigation Bar/Displaying an Image on a Navigation Bar/Logo.psd -------------------------------------------------------------------------------- /Chapter 1/Displaying an Image on a Navigation Bar/Displaying an Image on a Navigation Bar/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Displaying an Image on a Navigation Bar/Displaying an Image on a Navigation BarTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Enabling Paging with UIPageViewController/Enabling Paging with UIPageViewController/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Enabling Paging with UIPageViewController/Enabling Paging with UIPageViewControllerTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Grouping Compact Options with UISegmentedControl/Grouping Compact Options with UISegmentedControl/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Grouping Compact Options with UISegmentedControl/Grouping Compact Options with UISegmentedControlTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Implementing Navigation with UINavigationController/Implementing Navigation with UINavigationController/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Implementing Navigation with UINavigationController/Implementing Navigation with UINavigationControllerTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Implementing Range Pickers with UISlider/Implementing Range Pickers with UISlider/Thumb.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Implementing Range Pickers with UISlider/Implementing Range Pickers with UISlider/Thumb.psd -------------------------------------------------------------------------------- /Chapter 1/Implementing Range Pickers with UISlider/Implementing Range Pickers with UISlider/ThumbHighlighted.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Implementing Range Pickers with UISlider/Implementing Range Pickers with UISlider/ThumbHighlighted.png -------------------------------------------------------------------------------- /Chapter 1/Implementing Range Pickers with UISlider/Implementing Range Pickers with UISlider/ThumbHighlighted@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Implementing Range Pickers with UISlider/Implementing Range Pickers with UISlider/ThumbHighlighted@2x.png -------------------------------------------------------------------------------- /Chapter 1/Implementing Range Pickers with UISlider/Implementing Range Pickers with UISlider/ThumbNormal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Implementing Range Pickers with UISlider/Implementing Range Pickers with UISlider/ThumbNormal.png -------------------------------------------------------------------------------- /Chapter 1/Implementing Range Pickers with UISlider/Implementing Range Pickers with UISlider/ThumbNormal@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 1/Implementing Range Pickers with UISlider/Implementing Range Pickers with UISlider/ThumbNormal@2x.png -------------------------------------------------------------------------------- /Chapter 1/Implementing Range Pickers with UISlider/Implementing Range Pickers with UISlider/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Implementing Range Pickers with UISlider/Implementing Range Pickers with UISliderTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Loading Web Pages with UIWebView/Loading Web Pages with UIWebView/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Loading Web Pages with UIWebView/Loading Web Pages with UIWebViewTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Manipulating a Navigation Controller’s Array of View Controllers/Manipulating a Navigation Controller’s Array of View Controllers/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Manipulating a Navigation Controller’s Array of View Controllers/Manipulating a Navigation Controller’s Array of View ControllersTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Picking Date and Time with UIDatePicker/Picking Date and Time with UIDatePicker/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Picking Date and Time with UIDatePicker/Picking Date and Time with UIDatePickerTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Picking Values with UIPickerView/Picking Values with UIPickerView/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Picking Values with UIPickerView/Picking Values with UIPickerViewTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Presenting Custom Sharing Options with UIActivityViewController/Presenting Custom Sharing Options with UIActivityViewController/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Presenting Custom Sharing Options with UIActivityViewController/Presenting Custom Sharing Options with UIActivityViewControllerTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Presenting Master-Detail Views with UISplitViewController/Presenting Master-Detail Views with UISplitViewController/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Presenting Master-Detail Views with UISplitViewController/Presenting Master-Detail Views with UISplitViewControllerTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Presenting Multiple View Controllers with UITabBarController/Presenting Multiple View Controllers with UITabBarController/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Presenting Multiple View Controllers with UITabBarController/Presenting Multiple View Controllers with UITabBarControllerTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Presenting Sharing Options with UIActivityViewController/Presenting Sharing Options with UIActivityViewController/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Presenting Sharing Options with UIActivityViewController/Presenting Sharing Options with UIActivityViewControllerTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Presenting and Managing Views with UIViewController/Presenting and Managing Views with UIViewController/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 1/Presenting and Managing Views with UIViewController/Presenting and Managing Views with UIViewControllerTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 10/Detecting Long Press Gestures/Detecting Long Press Gestures/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Detecting Long Press Gestures 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 10/Detecting Long Press Gestures/Detecting Long Press Gestures/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 10/Detecting Long Press Gestures/Detecting Long Press GesturesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 10/Detecting Panning and Dragging Gestures/Detecting Panning and Dragging Gestures/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 10/Detecting Panning and Dragging Gestures/Detecting Panning and Dragging GesturesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 10/Detecting Pinch Gestures/Detecting Pinch Gestures/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Detecting Pinch Gestures 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 10/Detecting Pinch Gestures/Detecting Pinch Gestures/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 10/Detecting Pinch Gestures/Detecting Pinch GesturesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 10/Detecting Rotation Gestures/Detecting Rotation Gestures/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Detecting Rotation Gestures 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 10/Detecting Rotation Gestures/Detecting Rotation Gestures/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 10/Detecting Rotation Gestures/Detecting Rotation GesturesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 10/Detecting Swipe Gestures/Detecting Swipe Gestures/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Detecting Swipe Gestures 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 10/Detecting Swipe Gestures/Detecting Swipe Gestures/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 10/Detecting Swipe Gestures/Detecting Swipe GesturesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 10/Detecting Tap Gestures/Detecting Tap Gestures/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Detecting Tap Gestures 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 10/Detecting Tap Gestures/Detecting Tap Gestures/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 10/Detecting Tap Gestures/Detecting Tap GesturesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 10/Introduction to Gesture Recognizers/Introduction to Gesture Recognizers/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 10/Introduction to Gesture Recognizers/Introduction to Gesture RecognizersTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Deserializing JSON into Arrays and Dictionaries/Deserializing JSON into Arrays and Dictionaries/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Deserializing JSON into Arrays and Dictionaries/Deserializing JSON into Arrays and DictionariesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Downloading Asynchronously with NSURLConnection/Downloading Asynchronously with NSURLConnection/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Downloading Asynchronously with NSURLConnection/Downloading Asynchronously with NSURLConnectionTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Downloading Synchronously with NSURLConnection/Downloading Synchronously with NSURLConnection/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Downloading Synchronously with NSURLConnection/Downloading Synchronously with NSURLConnectionTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Handling Timeouts in Asynchronous Connections/Handling Timeouts in Asynchronous Connections/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Handling Timeouts in Asynchronous Connections/Handling Timeouts in Asynchronous ConnectionsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Integrating Social Sharing into Your Apps/Integrating Social Sharing into Your Apps/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Integrating Social Sharing into Your Apps/Integrating Social Sharing into Your AppsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Modifying a URL Request with NSMutableURLRequest/Modifying a URL Request with NSMutableURLRequest/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Modifying a URL Request with NSMutableURLRequest/Modifying a URL Request with NSMutableURLRequestTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Parsing XML with NSXMLParser/Parsing XML with NSXMLParser/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Parsing XML with NSXMLParser/Parsing XML with NSXMLParserTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Sending HTTP DELETE Requests with NSURLConnection/Sending HTTP DELETE Requests with NSURLConnection/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Sending HTTP DELETE Requests with NSURLConnection/Sending HTTP DELETE Requests with NSURLConnectionTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Sending HTTP GET Requests with NSURLConnection/Sending HTTP GET Requests with NSURLConnection/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Sending HTTP GET Requests with NSURLConnection/Sending HTTP GET Requests with NSURLConnectionTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Sending HTTP POST Requests with NSURLConnection/Sending HTTP POST Requests with NSURLConnection/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Sending HTTP POST Requests with NSURLConnection/Sending HTTP POST Requests with NSURLConnectionTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Sending HTTP PUT Requests with NSURLConnection/Sending HTTP PUT Requests with NSURLConnection/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Sending HTTP PUT Requests with NSURLConnection/Sending HTTP PUT Requests with NSURLConnectionTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Serializing Arrays and Dictionaries into JSON/Serializing Arrays and Dictionaries into JSON/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 11/Serializing Arrays and Dictionaries into JSON/Serializing Arrays and Dictionaries into JSONTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 12/Accessing the Music Library/Accessing the Music Library/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Accessing the Music Library 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 12/Accessing the Music Library/Accessing the Music Library/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 12/Accessing the Music Library/Accessing the Music LibraryTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 12/Capturing Thumbnails from Video Files/Capturing Thumbnails from Video Files/Sample.m4v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 12/Capturing Thumbnails from Video Files/Capturing Thumbnails from Video Files/Sample.m4v -------------------------------------------------------------------------------- /Chapter 12/Capturing Thumbnails from Video Files/Capturing Thumbnails from Video Files/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 12/Capturing Thumbnails from Video Files/Capturing Thumbnails from Video FilesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 12/Handling Interruptions While Playing Audio/Handling Interruptions While Playing Audio/MySong.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 12/Handling Interruptions While Playing Audio/Handling Interruptions While Playing Audio/MySong.mp3 -------------------------------------------------------------------------------- /Chapter 12/Handling Interruptions While Playing Audio/Handling Interruptions While Playing Audio/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 12/Handling Interruptions While Playing Audio/Handling Interruptions While Playing AudioTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 12/Handling Interruptions While Recording Audio/Handling Interruptions While Recording Audio/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 12/Handling Interruptions While Recording Audio/Handling Interruptions While Recording AudioTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 12/Introduction to Audio and Video/Introduction to Audio and Video/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 12/Introduction to Audio and Video/Introduction to Audio and VideoTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 12/Playing Audio Files/Playing Audio Files/MySong.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 12/Playing Audio Files/Playing Audio Files/MySong.mp3 -------------------------------------------------------------------------------- /Chapter 12/Playing Audio Files/Playing Audio Files/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Playing Audio Files 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 12/Playing Audio Files/Playing Audio Files/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 12/Playing Audio Files/Playing Audio FilesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 12/Playing Audio over Other Active Sounds/Playing Audio over Other Active Sounds/MySong.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 12/Playing Audio over Other Active Sounds/Playing Audio over Other Active Sounds/MySong.mp3 -------------------------------------------------------------------------------- /Chapter 12/Playing Audio over Other Active Sounds/Playing Audio over Other Active Sounds/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 12/Playing Audio over Other Active Sounds/Playing Audio over Other Active SoundsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 12/Playing Video Files/Playing Video Files/Sample.m4v: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 12/Playing Video Files/Playing Video Files/Sample.m4v -------------------------------------------------------------------------------- /Chapter 12/Playing Video Files/Playing Video Files/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Playing Video Files 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 12/Playing Video Files/Playing Video Files/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 12/Playing Video Files/Playing Video FilesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 12/Recording Audio/Recording Audio/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Recording Audio 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 12/Recording Audio/Recording Audio/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 12/Recording Audio/Recording AudioTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 13/Adding Persons to Groups/Adding Persons to Groups/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 13/Adding Persons to Groups/Adding Persons to GroupsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 13/Inserting a Group Entry into the Address Book/Inserting a Group Entry into the Address Book/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 13/Inserting a Group Entry into the Address Book/Inserting a Group Entry into the Address BookTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 13/Inserting a Person Entry into the Address Book/Inserting a Person Entry into the Address Book/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 13/Inserting a Person Entry into the Address Book/Inserting a Person Entry into the Address BookTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 13/Introduction to Address Book/Introduction to Address Book/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 13/Introduction to Address Book/Introduction to Address BookTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 13/Requesting Access to the Address Book/Requesting Access to the Address Book/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 13/Requesting Access to the Address Book/Requesting Access to the Address BookTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 13/Retrieving All the People in the Address Book/Retrieving All the People in the Address Book/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 13/Retrieving All the People in the Address Book/Retrieving All the People in the Address BookTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 13/Retrieving Properties of Address Book Entries/Retrieving Properties of Address Book Entries/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 13/Retrieving Properties of Address Book Entries/Retrieving Properties of Address Book EntriesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 13/Retrieving a Reference to an Address Book/Retrieving a Reference to an Address Book/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 13/Retrieving a Reference to an Address Book/Retrieving a Reference to an Address BookTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 13/Retrieving and Setting a Person’s Address Book Image/Retrieving and Setting a Person’s Address Book Image/Anthony Robbins.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 13/Retrieving and Setting a Person’s Address Book Image/Retrieving and Setting a Person’s Address Book Image/Anthony Robbins.jpg -------------------------------------------------------------------------------- /Chapter 13/Retrieving and Setting a Person’s Address Book Image/Retrieving and Setting a Person’s Address Book Image/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 13/Retrieving and Setting a Person’s Address Book Image/Retrieving and Setting a Person’s Address Book ImageTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 13/Searching the Address Book/Searching the Address Book/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 13/Searching the Address Book/Searching the Address BookTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 14/Creating Folders on Disk/Creating Folders on Disk/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 14/Creating Folders on Disk/Creating Folders on DiskTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 14/Deleting Files and Folders/Deleting Files and Folders/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 14/Deleting Files and Folders/Deleting Files and FoldersTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 14/Enumerating Files and Folders/Enumerating Files and Folders/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 14/Enumerating Files and Folders/Enumerating Files and FoldersTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 14/Finding the Path of the Most Useful Folders on Disk/Finding the Path of the Most Useful Folders on Disk/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 14/Finding the Path of the Most Useful Folders on Disk/Finding the Path of the Most Useful Folders on DiskTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 14/Saving Objects to Files/Saving Objects to Files/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 14/Saving Objects to Files/Saving Objects to FilesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 14/Writing to and Reading from Files/Writing to and Reading from Files/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 14/Writing to and Reading from Files/Writing to and Reading from FilesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 15/Detecting and Probing the Camera/Detecting and Probing the Camera/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 15/Detecting and Probing the Camera/Detecting and Probing the CameraTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 15/Editing Videos on an iOS Device/Editing Videos on an iOS Device/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 15/Editing Videos on an iOS Device/Editing Videos on an iOS DeviceTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 15/Introduction to Camera and the Photo Library/Introduction to Camera and the Photo Library/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 15/Introduction to Camera and the Photo Library/Introduction to Camera and the Photo LibraryTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 15/Retrieving Assets from the Assets Library/Retrieving Assets from the Assets Library/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 15/Retrieving Assets from the Assets Library/Retrieving Assets from the Assets LibraryTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 15/Retrieving Photos and Videos from the Photo Library/Retrieving Photos and Videos from the Photo Library/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 15/Retrieving Photos and Videos from the Photo Library/Retrieving Photos and Videos from the Photo LibraryTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 15/Storing Photos in the Photo Library/Storing Photos in the Photo Library/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 15/Storing Photos in the Photo Library/Storing Photos in the Photo LibraryTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 15/Storing Videos in the Photo Library/Storing Videos in the Photo Library/MyVideo.MOV: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 15/Storing Videos in the Photo Library/Storing Videos in the Photo Library/MyVideo.MOV -------------------------------------------------------------------------------- /Chapter 15/Storing Videos in the Photo Library/Storing Videos in the Photo Library/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 15/Storing Videos in the Photo Library/Storing Videos in the Photo LibraryTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 15/Taking Photos with the Camera/Taking Photos with the Camera/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Taking Photos with the Camera 4 | // 5 | // Created by Vandad NP on 25/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 15/Taking Photos with the Camera/Taking Photos with the Camera/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 15/Taking Photos with the Camera/Taking Photos with the CameraTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 15/Taking Videos with the Camera/Taking Videos with the Camera/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Taking Videos with the Camera 4 | // 5 | // Created by Vandad NP on 25/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 15/Taking Videos with the Camera/Taking Videos with the Camera/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 15/Taking Videos with the Camera/Taking Videos with the CameraTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 16/Adding Background Fetch Capabilities to Your Apps/Adding Background Fetch Capabilities to Your Apps.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Chapter 16/Adding Background Fetch Capabilities to Your Apps/Adding Background Fetch Capabilities to Your Apps/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 16/Adding Background Fetch Capabilities to Your Apps/Adding Background Fetch Capabilities to Your AppsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 16/Completing a Long-Running Task in the Background/Completing a Long-Running Task in the Background/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 16/Completing a Long-Running Task in the Background/Completing a Long-Running Task in the BackgroundTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 16/Detecting the Availability of Multitasking/Detecting the Availability of Multitasking/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 16/Detecting the Availability of Multitasking/Detecting the Availability of MultitaskingTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 16/Handling Location Changes in the Background/Handling Location Changes in the Background/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 16/Handling Location Changes in the Background/Handling Location Changes in the BackgroundTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 16/Handling Network Connections in the Background/Handling Network Connections in the Background/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 16/Handling Network Connections in the Background/Handling Network Connections in the BackgroundTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 16/Opting Out of Multitasking/Opting Out of Multitasking/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 16/Opting Out of Multitasking/Opting Out of MultitaskingTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 16/Playing Audio in the Background/Playing Audio in the Background.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Chapter 16/Playing Audio in the Background/Playing Audio in the Background/MySong.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 16/Playing Audio in the Background/Playing Audio in the Background/MySong.mp3 -------------------------------------------------------------------------------- /Chapter 16/Playing Audio in the Background/Playing Audio in the Background/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 16/Playing Audio in the Background/Playing Audio in the BackgroundTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 16/Saving and Loading the State of Multitasking Apps/Saving and Loading the State of Multitasking Apps/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 16/Saving and Loading the State of Multitasking Apps/Saving and Loading the State of Multitasking AppsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 17/Delivering Push Notifications to Your App/Delivering Push Notifications to Your App/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 17/Delivering Push Notifications to Your App/Delivering Push Notifications to Your AppTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 17/Handling Local System Notifications/Handling Local System Notifications/Settings.bundle/en.lproj/Root.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 17/Handling Local System Notifications/Handling Local System Notifications/Settings.bundle/en.lproj/Root.strings -------------------------------------------------------------------------------- /Chapter 17/Handling Local System Notifications/Handling Local System Notifications/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 17/Handling Local System Notifications/Handling Local System NotificationsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 17/Listening for and Reacting to Keyboard Notifications/Listening for and Reacting to Keyboard Notifications/Background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 17/Listening for and Reacting to Keyboard Notifications/Listening for and Reacting to Keyboard Notifications/Background.png -------------------------------------------------------------------------------- /Chapter 17/Listening for and Reacting to Keyboard Notifications/Listening for and Reacting to Keyboard Notifications/Background.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 17/Listening for and Reacting to Keyboard Notifications/Listening for and Reacting to Keyboard Notifications/Background.psd -------------------------------------------------------------------------------- /Chapter 17/Listening for and Reacting to Keyboard Notifications/Listening for and Reacting to Keyboard Notifications/Background@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 17/Listening for and Reacting to Keyboard Notifications/Listening for and Reacting to Keyboard Notifications/Background@2x.png -------------------------------------------------------------------------------- /Chapter 17/Listening for and Reacting to Keyboard Notifications/Listening for and Reacting to Keyboard Notifications/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 17/Listening for and Reacting to Keyboard Notifications/Listening for and Reacting to Keyboard NotificationsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 17/Listening for and Reacting to Notifications/Listening for and Reacting to Notifications/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 17/Listening for and Reacting to Notifications/Listening for and Reacting to NotificationsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 17/Scheduling Local Notifications/Scheduling Local Notifications/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 17/Scheduling Local Notifications/Scheduling Local NotificationsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 17/Sending Notifications/Sending Notifications/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 17/Sending Notifications/Sending NotificationsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 17/Setting Up Your App for Push Notifications/Setting Up Your App for Push Notifications/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 17/Setting Up Your App for Push Notifications/Setting Up Your App for Push NotificationsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 18/Boosting Data Access in Table Views/Boosting Data Access in Table Views.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Chapter 18/Boosting Data Access in Table Views/Boosting Data Access in Table Views/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 18/Boosting Data Access in Table Views/Boosting Data Access in Table ViewsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 18/Creating a Core Data Model with Xcode/Creating a Core Data Model with Xcode/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 18/Creating a Core Data Model with Xcode/Creating a Core Data Model with XcodeTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 18/Creating and Saving Data Using Core Data/Creating and Saving Data Using Core Data/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 18/Creating and Saving Data Using Core Data/Creating and Saving Data Using Core DataTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 18/Deleting Data From Core Data/Deleting Data From Core Data/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 18/Deleting Data From Core Data/Deleting Data From Core DataTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 18/Fetching Data in the Background/Fetching Data in the Background/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 18/Fetching Data in the Background/Fetching Data in the BackgroundTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 18/Generating Class Files for Core Data Entities/Generating Class Files for Core Data Entities/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 18/Generating Class Files for Core Data Entities/Generating Class Files for Core Data EntitiesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 18/Implementing Relationships in Core Data/Implementing Relationships in Core Data/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 18/Implementing Relationships in Core Data/Implementing Relationships in Core DataTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 18/Introduction to Core Data/Introduction to Core Data/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 18/Introduction to Core Data/Introduction to Core DataTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 18/Reading Data from Core Data/Reading Data from Core Data/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 18/Reading Data from Core Data/Reading Data from Core DataTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 18/Sorting Data in Core Data/Sorting Data in Core Data/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 18/Sorting Data in Core Data/Sorting Data in Core DataTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 18/Using Custom Data Types in your Core Data Model/Using Custom Data Types in your Core Data Model/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 18/Using Custom Data Types in your Core Data Model/Using Custom Data Types in your Core Data ModelTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Accessing the Contents of Calendars/Accessing the Contents of Calendars/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Accessing the Contents of Calendars/Accessing the Contents of CalendarsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Adding Alarms to Calendars/Adding Alarms to Calendars/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Adding Alarms to Calendars/Adding Alarms to CalendarsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Adding Events to Calendars/Adding Events to Calendars/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Adding Events to Calendars/Adding Events to CalendarsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Adding Recurring Events to Calendars/Adding Recurring Events to Calendars/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Adding Recurring Events to Calendars/Adding Recurring Events to CalendarsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Handling Event Changed Notifications/Handling Event Changed Notifications/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Handling Event Changed Notifications/Handling Event Changed NotificationsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Introduction to Dates and Calendars/Introduction to Dates and Calendars/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Introduction to Dates and Calendars/Introduction to Dates and CalendarsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Presenting Event Edit View Controllers/Presenting Event Edit View Controllers/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Presenting Event Edit View Controllers/Presenting Event Edit View ControllersTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Presenting Event View Controllers/Presenting Event View Controllers/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Presenting Event View Controllers/Presenting Event View ControllersTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Removing Events from Calendars/Removing Events from Calendars/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Removing Events from Calendars/Removing Events from CalendarsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Requesting Permission to Access Calendars/Requesting Permission to Access Calendars/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Requesting Permission to Access Calendars/Requesting Permission to Access CalendarsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Retrieving Calendar Groups on an iOS Device/Retrieving Calendar Groups on an iOS Device/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Retrieving Calendar Groups on an iOS Device/Retrieving Calendar Groups on an iOS DeviceTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Retrieving the Attendees of an Event/Retrieving the Attendees of an Event/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 19/Retrieving the Attendees of an Event/Retrieving the Attendees of an EventTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 2/Adding Gravity to your UI components/Adding Gravity to your UI components/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 2/Adding Gravity to your UI components/Adding Gravity to your UI componentsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 2/Adding a Dynamic Snap Effect to Your UI Components/Adding a Dynamic Snap Effect to Your UI Components/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 2/Adding a Dynamic Snap Effect to Your UI Components/Adding a Dynamic Snap Effect to Your UI ComponentsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 2/Animating Your UI Components With a Push/Animating Your UI Components With a Push/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 2/Animating Your UI Components With a Push/Animating Your UI Components With a PushTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 2/Assigning Characteristic to Your Dynamic Effects/Assigning Characteristic to Your Dynamic Effects/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 2/Assigning Characteristic to Your Dynamic Effects/Assigning Characteristic to Your Dynamic EffectsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 2/Attaching Multiple Dynamic Items to Each Other/Attaching Multiple Dynamic Items to Each Other/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 2/Attaching Multiple Dynamic Items to Each Other/Attaching Multiple Dynamic Items to Each OtherTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 2/Detecting and Reacting to Collisions Between UI Components/Detecting and Reacting to Collisions Between UI Components/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 2/Detecting and Reacting to Collisions Between UI Components/Detecting and Reacting to Collisions Between UI ComponentsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Adding Shadows to Shapes/Adding Shadows to Shapes/View.h: -------------------------------------------------------------------------------- 1 | // 2 | // View.h 3 | // Drawing Text 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface View : UIView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Adding Shadows to Shapes/Adding Shadows to Shapes/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Adding Shadows to Shapes 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Adding Shadows to Shapes/Adding Shadows to Shapes/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Adding Shadows to Shapes/Adding Shadows to ShapesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Animating and Moving Views/Animating and Moving Views/Images.xcassets/Xcode.imageset/Xcode.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 20/Animating and Moving Views/Animating and Moving Views/Images.xcassets/Xcode.imageset/Xcode.png -------------------------------------------------------------------------------- /Chapter 20/Animating and Moving Views/Animating and Moving Views/Images.xcassets/Xcode.imageset/Xcode@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 20/Animating and Moving Views/Animating and Moving Views/Images.xcassets/Xcode.imageset/Xcode@2x.png -------------------------------------------------------------------------------- /Chapter 20/Animating and Moving Views/Animating and Moving Views/View.h: -------------------------------------------------------------------------------- 1 | // 2 | // View.h 3 | // Drawing Text 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface View : UIView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Animating and Moving Views/Animating and Moving Views/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Animating and Moving Views 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Animating and Moving Views/Animating and Moving Views/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Animating and Moving Views/Animating and Moving ViewsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Animating and Rotating Views/Animating and Rotating Views/Images.xcassets/Xcode.imageset/Xcode.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 20/Animating and Rotating Views/Animating and Rotating Views/Images.xcassets/Xcode.imageset/Xcode.png -------------------------------------------------------------------------------- /Chapter 20/Animating and Rotating Views/Animating and Rotating Views/Images.xcassets/Xcode.imageset/Xcode@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 20/Animating and Rotating Views/Animating and Rotating Views/Images.xcassets/Xcode.imageset/Xcode@2x.png -------------------------------------------------------------------------------- /Chapter 20/Animating and Rotating Views/Animating and Rotating Views/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Animating and Rotating Views 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Animating and Rotating Views/Animating and Rotating Views/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Animating and Rotating Views/Animating and Rotating ViewsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Animating and Scaling Views/Animating and Scaling Views/Images.xcassets/Xcode.imageset/Xcode.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 20/Animating and Scaling Views/Animating and Scaling Views/Images.xcassets/Xcode.imageset/Xcode.png -------------------------------------------------------------------------------- /Chapter 20/Animating and Scaling Views/Animating and Scaling Views/Images.xcassets/Xcode.imageset/Xcode@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 20/Animating and Scaling Views/Animating and Scaling Views/Images.xcassets/Xcode.imageset/Xcode@2x.png -------------------------------------------------------------------------------- /Chapter 20/Animating and Scaling Views/Animating and Scaling Views/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Animating and Scaling Views 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Animating and Scaling Views/Animating and Scaling Views/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Animating and Scaling Views/Animating and Scaling ViewsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Capturing a Screenshot of Your View Into an Image/Capturing a Screenshot of Your View Into an Image/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Capturing a Screenshot of Your View Into an Image/Capturing a Screenshot of Your View Into an ImageTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Constructing Paths/Constructing Paths/View.h: -------------------------------------------------------------------------------- 1 | // 2 | // View.h 3 | // Drawing Text 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface View : UIView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Constructing Paths/Constructing Paths/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Constructing Paths 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Constructing Paths/Constructing Paths/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Constructing Paths/Constructing PathsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Constructing Resizable Images/Constructing Resizable Images/Images.xcassets/Button.imageset/Button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 20/Constructing Resizable Images/Constructing Resizable Images/Images.xcassets/Button.imageset/Button.png -------------------------------------------------------------------------------- /Chapter 20/Constructing Resizable Images/Constructing Resizable Images/Images.xcassets/Button.imageset/Button@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 20/Constructing Resizable Images/Constructing Resizable Images/Images.xcassets/Button.imageset/Button@2x.png -------------------------------------------------------------------------------- /Chapter 20/Constructing Resizable Images/Constructing Resizable Images/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Constructing Resizable Images 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Constructing Resizable Images/Constructing Resizable Images/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Constructing Resizable Images/Constructing Resizable ImagesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Constructing, Setting, and Using Colors/Constructing, Setting, and Using Colors/View.h: -------------------------------------------------------------------------------- 1 | // 2 | // View.h 3 | // Drawing Text 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface View : UIView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Constructing, Setting, and Using Colors/Constructing, Setting, and Using Colors/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Constructing, Setting, and Using Colors/Constructing, Setting, and Using ColorsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Drawing Gradients/Drawing Gradients/View.h: -------------------------------------------------------------------------------- 1 | // 2 | // View.h 3 | // Drawing Text 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface View : UIView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Drawing Gradients/Drawing Gradients/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Drawing Gradients 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Drawing Gradients/Drawing Gradients/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Drawing Gradients/Drawing GradientsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Drawing Images/Drawing Images/Images.xcassets/Xcode.imageset/Xcode.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 20/Drawing Images/Drawing Images/Images.xcassets/Xcode.imageset/Xcode.png -------------------------------------------------------------------------------- /Chapter 20/Drawing Images/Drawing Images/Images.xcassets/Xcode.imageset/Xcode@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 20/Drawing Images/Drawing Images/Images.xcassets/Xcode.imageset/Xcode@2x.png -------------------------------------------------------------------------------- /Chapter 20/Drawing Images/Drawing Images/View.h: -------------------------------------------------------------------------------- 1 | // 2 | // View.h 3 | // Drawing Text 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface View : UIView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Drawing Images/Drawing Images/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Drawing Images 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Drawing Images/Drawing Images/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Drawing Images/Drawing ImagesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Drawing Lines/Drawing Lines/View.h: -------------------------------------------------------------------------------- 1 | // 2 | // View.h 3 | // Drawing Text 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface View : UIView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Drawing Lines/Drawing Lines/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Drawing Lines 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Drawing Lines/Drawing Lines/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Drawing Lines/Drawing LinesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Drawing Rectangles/Drawing Rectangles/View.h: -------------------------------------------------------------------------------- 1 | // 2 | // View.h 3 | // Drawing Text 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface View : UIView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Drawing Rectangles/Drawing Rectangles/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Drawing Rectangles 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Drawing Rectangles/Drawing Rectangles/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Drawing Rectangles/Drawing RectanglesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Drawing Text/Drawing Text/View.h: -------------------------------------------------------------------------------- 1 | // 2 | // View.h 3 | // Drawing Text 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface View : UIView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Drawing Text/Drawing Text/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Drawing Text 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Drawing Text/Drawing Text/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Drawing Text/Drawing TextTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Enumerating and Loading Fonts/Enumerating and Loading Fonts/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Enumerating and Loading Fonts/Enumerating and Loading FontsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Introduction to Graphics and Animations/Introduction to Graphics and Animations/View.h: -------------------------------------------------------------------------------- 1 | // 2 | // View.h 3 | // Introduction to Graphics and Animations 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface View : UIView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Introduction to Graphics and Animations/Introduction to Graphics and Animations/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Introduction to Graphics and Animations/Introduction to Graphics and AnimationsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Moving Shapes Drawn on a Graphic Context/Moving Shapes Drawn on a Graphic Context/View.h: -------------------------------------------------------------------------------- 1 | // 2 | // View.h 3 | // Drawing Text 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface View : UIView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Moving Shapes Drawn on a Graphic Context/Moving Shapes Drawn on a Graphic Context/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Moving Shapes Drawn on a Graphic Context/Moving Shapes Drawn on a Graphic ContextTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Rotating Shapes Drawn on Graphic Contexts/Rotating Shapes Drawn on Graphic Contexts/View.h: -------------------------------------------------------------------------------- 1 | // 2 | // View.h 3 | // Drawing Text 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface View : UIView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Rotating Shapes Drawn on Graphic Contexts/Rotating Shapes Drawn on Graphic Contexts/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Rotating Shapes Drawn on Graphic Contexts/Rotating Shapes Drawn on Graphic ContextsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Scaling Shapes Draw on Graphic Contexts/Scaling Shapes Draw on Graphic Contexts/View.h: -------------------------------------------------------------------------------- 1 | // 2 | // View.h 3 | // Drawing Text 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface View : UIView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 20/Scaling Shapes Draw on Graphic Contexts/Scaling Shapes Draw on Graphic Contexts/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 20/Scaling Shapes Draw on Graphic Contexts/Scaling Shapes Draw on Graphic ContextsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 21/Detecting Shakes on an iOS Device/Detecting Shakes on an iOS Device/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 21/Detecting Shakes on an iOS Device/Detecting Shakes on an iOS DeviceTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 21/Detecting the Availability of a Gyroscope/Detecting the Availability of a Gyroscope/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 21/Detecting the Availability of a Gyroscope/Detecting the Availability of a GyroscopeTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 21/Detecting the Availability of an Accelerometer/Detecting the Availability of an Accelerometer/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 21/Detecting the Availability of an Accelerometer/Detecting the Availability of an AccelerometerTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 21/Retrieving Accelerometer Data/Retrieving Accelerometer Data/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 21/Retrieving Accelerometer Data/Retrieving Accelerometer DataTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 21/Retrieving Gyroscope Data/Retrieving Gyroscope Data/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 21/Retrieving Gyroscope Data/Retrieving Gyroscope DataTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 22/Creating and Managing Folders for Apps in iCloud/Creating and Managing Folders for Apps in iCloud/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 22/Creating and Managing Folders for Apps in iCloud/Creating and Managing Folders for Apps in iCloudTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 22/Managing the State of Documents in iCloud/Managing the State of Documents in iCloud/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 22/Managing the State of Documents in iCloud/Managing the State of Documents in iCloudTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 22/Searching for Files and Folders in iCloud/Searching for Files and Folders in iCloud/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 22/Searching for Files and Folders in iCloud/Searching for Files and Folders in iCloudTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 22/Setting Up Your App For iCloud/Setting Up Your App For iCloud/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 22/Setting Up Your App For iCloud/Setting Up Your App For iCloudTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 22/Storing User Documents in iCloud/Storing User Documents in iCloud/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 22/Storing User Documents in iCloud/Storing User Documents in iCloudTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 22/Storing and Synchronizing Dictionaries in iCloud/Storing and Synchronizing Dictionaries in iCloud/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 22/Storing and Synchronizing Dictionaries in iCloud/Storing and Synchronizing Dictionaries in iCloudTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 23/Creating Pass Files/Creating Pass Files/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 23/Creating Pass Files/Creating Pass FilesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 23/Interacting with Passbook Programmatically/Interacting with Passbook Programmatically.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Chapter 23/Interacting with Passbook Programmatically/Interacting with Passbook Programmatically/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 23/Interacting with Passbook Programmatically/Interacting with Passbook ProgrammaticallyTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/Certificates.p12: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/Certificates.p12 -------------------------------------------------------------------------------- /Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/pass/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/pass/background.png -------------------------------------------------------------------------------- /Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/pass/background@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/pass/background@2x.png -------------------------------------------------------------------------------- /Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/pass/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/pass/icon.png -------------------------------------------------------------------------------- /Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/pass/icon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/pass/icon@2x.png -------------------------------------------------------------------------------- /Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/pass/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/pass/logo.png -------------------------------------------------------------------------------- /Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/pass/logo@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/pass/logo@2x.png -------------------------------------------------------------------------------- /Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/pass/pass.pkpass: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/pass/pass.pkpass -------------------------------------------------------------------------------- /Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/pass/signature: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/pass/signature -------------------------------------------------------------------------------- /Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/pass/thumbnail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/pass/thumbnail.png -------------------------------------------------------------------------------- /Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/pass/thumbnail@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital Signature/pass/thumbnail@2x.png -------------------------------------------------------------------------------- /Chapter 23/Preparing Your Passes for Digital Signature/Preparing Your Passes for Digital SignatureTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 23/Providing Icons and Images for Passes/Providing Icons and Images for Passes/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 23/Providing Icons and Images for Passes/Providing Icons and Images for Passes/pass/background-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 23/Providing Icons and Images for Passes/Providing Icons and Images for Passes/pass/background-568h@2x.png -------------------------------------------------------------------------------- /Chapter 23/Providing Icons and Images for Passes/Providing Icons and Images for Passes/pass/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 23/Providing Icons and Images for Passes/Providing Icons and Images for Passes/pass/background.png -------------------------------------------------------------------------------- /Chapter 23/Providing Icons and Images for Passes/Providing Icons and Images for Passes/pass/background.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 23/Providing Icons and Images for Passes/Providing Icons and Images for Passes/pass/background.psd -------------------------------------------------------------------------------- /Chapter 23/Providing Icons and Images for Passes/Providing Icons and Images for Passes/pass/background@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 23/Providing Icons and Images for Passes/Providing Icons and Images for Passes/pass/background@2x.png -------------------------------------------------------------------------------- /Chapter 23/Providing Icons and Images for Passes/Providing Icons and Images for Passes/pass/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 23/Providing Icons and Images for Passes/Providing Icons and Images for Passes/pass/icon.png -------------------------------------------------------------------------------- /Chapter 23/Providing Icons and Images for Passes/Providing Icons and Images for Passes/pass/icon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 23/Providing Icons and Images for Passes/Providing Icons and Images for Passes/pass/icon@2x.png -------------------------------------------------------------------------------- /Chapter 23/Providing Icons and Images for Passes/Providing Icons and Images for Passes/pass/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 23/Providing Icons and Images for Passes/Providing Icons and Images for Passes/pass/logo.png -------------------------------------------------------------------------------- /Chapter 23/Providing Icons and Images for Passes/Providing Icons and Images for Passes/pass/logo@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 23/Providing Icons and Images for Passes/Providing Icons and Images for Passes/pass/logo@2x.png -------------------------------------------------------------------------------- /Chapter 23/Providing Icons and Images for Passes/Providing Icons and Images for Passes/pass/thumbnail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 23/Providing Icons and Images for Passes/Providing Icons and Images for Passes/pass/thumbnail.png -------------------------------------------------------------------------------- /Chapter 23/Providing Icons and Images for Passes/Providing Icons and Images for Passes/pass/thumbnail@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 23/Providing Icons and Images for Passes/Providing Icons and Images for Passes/pass/thumbnail@2x.png -------------------------------------------------------------------------------- /Chapter 23/Providing Icons and Images for Passes/Providing Icons and Images for PassesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 3/Autolayout and the Visual Format Language Introduction/Autolayout and the Visual Format Language Introduction/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 3/Configuring Autolayout Constraints in Interface Builder/Configuring Autolayout Constraints in Interface Builder/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 3/Configuring Autolayout Constraints in Interface Builder/Configuring Autolayout Constraints in Interface BuilderTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 3/Defining Horizontal and Vertical Constraints/Defining Horizontal and Vertical Constraints/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 3/Defining Horizontal and Vertical Constraints/Defining Horizontal and Vertical ConstraintsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 3/Placing UI Components in the Center of the Screen/Placing UI Components in the Center of the Screen/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 3/Placing UI Components in the Center of the Screen/Placing UI Components in the Center of the ScreenTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 3/Utilizing Cross View Constraints/Utilizing Cross View Constraints/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 3/Utilizing Cross View Constraints/Utilizing Cross View ConstraintsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 4/Constructing Headers and Footers in Table Views/Constructing Headers and Footers in Table Views/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 4/Constructing Headers and Footers in Table Views/Constructing Headers and Footers in Table ViewsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 4/Creating Custom Table View Cell Accessories/Creating Custom Table View Cell Accessories/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 4/Creating Custom Table View Cell Accessories/Creating Custom Table View Cell AccessoriesTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 4/Deleting Cells and Sections from Table Views/Deleting Cells and Sections from Table Views/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 4/Deleting Cells and Sections from Table Views/Deleting Cells and Sections from Table ViewsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 4/Displaying Context Menus on Table Views Cells/Displaying Context Menus on Table Views Cells/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 4/Displaying Context Menus on Table Views Cells/Displaying Context Menus on Table Views CellsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 4/Displaying a Refresh Control for Table Views/Displaying a Refresh Control for Table Views/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 4/Displaying a Refresh Control for Table Views/Displaying a Refresh Control for Table ViewsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 4/Enabling Swipe Deletion of Table View Cells/Enabling Swipe Deletion of Table View Cells/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 4/Enabling Swipe Deletion of Table View Cells/Enabling Swipe Deletion of Table View CellsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 4/Introduction to Table Views/Introduction to Table Views/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Introduction to Table Views 4 | // 5 | // Created by Vandad NP on 23/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 4/Introduction to Table Views/Introduction to Table Views/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 4/Introduction to Table Views/Introduction to Table ViewsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 4/Moving Cells and Sections in Table Views/Moving Cells and Sections in Table Views/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 4/Moving Cells and Sections in Table Views/Moving Cells and Sections in Table ViewsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 4/Populating a Table View with Data/Populating a Table View with Data/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 4/Populating a Table View with Data/Populating a Table View with DataTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 4/Using Different Types of Accessories in a Table View Cell/Using Different Types of Accessories in a Table View Cell/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 4/Using Different Types of Accessories in a Table View Cell/Using Different Types of Accessories in a Table View CellTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 4/Utilizing the UITableViewController for Easy Creation of Table Views/Utilizing the UITableViewController for Easy Creation of Table Views/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 4/Utilizing the UITableViewController for Easy Creation of Table Views/Utilizing the UITableViewController for Easy Creation of Table ViewsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 5/Adding Custom Interactions to Collection Views/Adding Custom Interactions to Collection Views/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Adding Custom Interactions to Collection Views/Adding Custom Interactions to Collection Views/1.png -------------------------------------------------------------------------------- /Chapter 5/Adding Custom Interactions to Collection Views/Adding Custom Interactions to Collection Views/1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Adding Custom Interactions to Collection Views/Adding Custom Interactions to Collection Views/1@2x.png -------------------------------------------------------------------------------- /Chapter 5/Adding Custom Interactions to Collection Views/Adding Custom Interactions to Collection Views/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Adding Custom Interactions to Collection Views/Adding Custom Interactions to Collection Views/2.png -------------------------------------------------------------------------------- /Chapter 5/Adding Custom Interactions to Collection Views/Adding Custom Interactions to Collection Views/2@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Adding Custom Interactions to Collection Views/Adding Custom Interactions to Collection Views/2@2x.png -------------------------------------------------------------------------------- /Chapter 5/Adding Custom Interactions to Collection Views/Adding Custom Interactions to Collection Views/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Adding Custom Interactions to Collection Views/Adding Custom Interactions to Collection Views/3.png -------------------------------------------------------------------------------- /Chapter 5/Adding Custom Interactions to Collection Views/Adding Custom Interactions to Collection Views/3@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Adding Custom Interactions to Collection Views/Adding Custom Interactions to Collection Views/3@2x.png -------------------------------------------------------------------------------- /Chapter 5/Adding Custom Interactions to Collection Views/Adding Custom Interactions to Collection Views/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Adding Custom Interactions to Collection Views/Adding Custom Interactions to Collection Views/Default-568h@2x.png -------------------------------------------------------------------------------- /Chapter 5/Adding Custom Interactions to Collection Views/Adding Custom Interactions to Collection Views/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Adding Custom Interactions to Collection Views/Adding Custom Interactions to Collection Views/Default.png -------------------------------------------------------------------------------- /Chapter 5/Adding Custom Interactions to Collection Views/Adding Custom Interactions to Collection Views/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Adding Custom Interactions to Collection Views/Adding Custom Interactions to Collection Views/Default@2x.png -------------------------------------------------------------------------------- /Chapter 5/Adding Custom Interactions to Collection Views/Adding Custom Interactions to Collection Views/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 5/Assigning a Data Source to a Collection View/Assigning a Data Source to a Collection View/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Assigning a Data Source to a Collection View/Assigning a Data Source to a Collection View/Default-568h@2x.png -------------------------------------------------------------------------------- /Chapter 5/Assigning a Data Source to a Collection View/Assigning a Data Source to a Collection View/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Assigning a Data Source to a Collection View/Assigning a Data Source to a Collection View/Default.png -------------------------------------------------------------------------------- /Chapter 5/Assigning a Data Source to a Collection View/Assigning a Data Source to a Collection View/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Assigning a Data Source to a Collection View/Assigning a Data Source to a Collection View/Default@2x.png -------------------------------------------------------------------------------- /Chapter 5/Assigning a Data Source to a Collection View/Assigning a Data Source to a Collection View/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 5/Constructing Collection Views/Constructing Collection Views/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Constructing Collection Views/Constructing Collection Views/Default-568h@2x.png -------------------------------------------------------------------------------- /Chapter 5/Constructing Collection Views/Constructing Collection Views/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Constructing Collection Views/Constructing Collection Views/Default.png -------------------------------------------------------------------------------- /Chapter 5/Constructing Collection Views/Constructing Collection Views/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Constructing Collection Views/Constructing Collection Views/Default@2x.png -------------------------------------------------------------------------------- /Chapter 5/Constructing Collection Views/Constructing Collection Views/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 5/Feeding Custom Cells to Collection Views Using Nib Files/Feeding Custom Cells to Collection Views Using Nib Files/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Feeding Custom Cells to Collection Views Using Nib Files/Feeding Custom Cells to Collection Views Using Nib Files/1.png -------------------------------------------------------------------------------- /Chapter 5/Feeding Custom Cells to Collection Views Using Nib Files/Feeding Custom Cells to Collection Views Using Nib Files/1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Feeding Custom Cells to Collection Views Using Nib Files/Feeding Custom Cells to Collection Views Using Nib Files/1@2x.png -------------------------------------------------------------------------------- /Chapter 5/Feeding Custom Cells to Collection Views Using Nib Files/Feeding Custom Cells to Collection Views Using Nib Files/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Feeding Custom Cells to Collection Views Using Nib Files/Feeding Custom Cells to Collection Views Using Nib Files/2.png -------------------------------------------------------------------------------- /Chapter 5/Feeding Custom Cells to Collection Views Using Nib Files/Feeding Custom Cells to Collection Views Using Nib Files/2@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Feeding Custom Cells to Collection Views Using Nib Files/Feeding Custom Cells to Collection Views Using Nib Files/2@2x.png -------------------------------------------------------------------------------- /Chapter 5/Feeding Custom Cells to Collection Views Using Nib Files/Feeding Custom Cells to Collection Views Using Nib Files/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Feeding Custom Cells to Collection Views Using Nib Files/Feeding Custom Cells to Collection Views Using Nib Files/3.png -------------------------------------------------------------------------------- /Chapter 5/Feeding Custom Cells to Collection Views Using Nib Files/Feeding Custom Cells to Collection Views Using Nib Files/3@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Feeding Custom Cells to Collection Views Using Nib Files/Feeding Custom Cells to Collection Views Using Nib Files/3@2x.png -------------------------------------------------------------------------------- /Chapter 5/Feeding Custom Cells to Collection Views Using Nib Files/Feeding Custom Cells to Collection Views Using Nib Files/Icons.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Feeding Custom Cells to Collection Views Using Nib Files/Feeding Custom Cells to Collection Views Using Nib Files/Icons.psd -------------------------------------------------------------------------------- /Chapter 5/Feeding Custom Cells to Collection Views Using Nib Files/Feeding Custom Cells to Collection Views Using Nib Files/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 5/Handling Events in Collection Views/Handling Events in Collection Views/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Handling Events in Collection Views/Handling Events in Collection Views/1.png -------------------------------------------------------------------------------- /Chapter 5/Handling Events in Collection Views/Handling Events in Collection Views/1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Handling Events in Collection Views/Handling Events in Collection Views/1@2x.png -------------------------------------------------------------------------------- /Chapter 5/Handling Events in Collection Views/Handling Events in Collection Views/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Handling Events in Collection Views/Handling Events in Collection Views/2.png -------------------------------------------------------------------------------- /Chapter 5/Handling Events in Collection Views/Handling Events in Collection Views/2@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Handling Events in Collection Views/Handling Events in Collection Views/2@2x.png -------------------------------------------------------------------------------- /Chapter 5/Handling Events in Collection Views/Handling Events in Collection Views/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Handling Events in Collection Views/Handling Events in Collection Views/3.png -------------------------------------------------------------------------------- /Chapter 5/Handling Events in Collection Views/Handling Events in Collection Views/3@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Handling Events in Collection Views/Handling Events in Collection Views/3@2x.png -------------------------------------------------------------------------------- /Chapter 5/Handling Events in Collection Views/Handling Events in Collection Views/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Handling Events in Collection Views/Handling Events in Collection Views/Default-568h@2x.png -------------------------------------------------------------------------------- /Chapter 5/Handling Events in Collection Views/Handling Events in Collection Views/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Handling Events in Collection Views/Handling Events in Collection Views/Default.png -------------------------------------------------------------------------------- /Chapter 5/Handling Events in Collection Views/Handling Events in Collection Views/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Handling Events in Collection Views/Handling Events in Collection Views/Default@2x.png -------------------------------------------------------------------------------- /Chapter 5/Handling Events in Collection Views/Handling Events in Collection Views/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 5/Providing Basic Content to a Collection View/Providing Basic Content to a Collection View/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing Basic Content to a Collection View/Providing Basic Content to a Collection View/Default-568h@2x.png -------------------------------------------------------------------------------- /Chapter 5/Providing Basic Content to a Collection View/Providing Basic Content to a Collection View/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing Basic Content to a Collection View/Providing Basic Content to a Collection View/Default.png -------------------------------------------------------------------------------- /Chapter 5/Providing Basic Content to a Collection View/Providing Basic Content to a Collection View/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing Basic Content to a Collection View/Providing Basic Content to a Collection View/Default@2x.png -------------------------------------------------------------------------------- /Chapter 5/Providing Basic Content to a Collection View/Providing Basic Content to a Collection View/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 5/Providing Contextual Menus on Collection View Cells/Providing Contextual Menus on Collection View Cells/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing Contextual Menus on Collection View Cells/Providing Contextual Menus on Collection View Cells/1.png -------------------------------------------------------------------------------- /Chapter 5/Providing Contextual Menus on Collection View Cells/Providing Contextual Menus on Collection View Cells/1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing Contextual Menus on Collection View Cells/Providing Contextual Menus on Collection View Cells/1@2x.png -------------------------------------------------------------------------------- /Chapter 5/Providing Contextual Menus on Collection View Cells/Providing Contextual Menus on Collection View Cells/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing Contextual Menus on Collection View Cells/Providing Contextual Menus on Collection View Cells/2.png -------------------------------------------------------------------------------- /Chapter 5/Providing Contextual Menus on Collection View Cells/Providing Contextual Menus on Collection View Cells/2@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing Contextual Menus on Collection View Cells/Providing Contextual Menus on Collection View Cells/2@2x.png -------------------------------------------------------------------------------- /Chapter 5/Providing Contextual Menus on Collection View Cells/Providing Contextual Menus on Collection View Cells/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing Contextual Menus on Collection View Cells/Providing Contextual Menus on Collection View Cells/3.png -------------------------------------------------------------------------------- /Chapter 5/Providing Contextual Menus on Collection View Cells/Providing Contextual Menus on Collection View Cells/3@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing Contextual Menus on Collection View Cells/Providing Contextual Menus on Collection View Cells/3@2x.png -------------------------------------------------------------------------------- /Chapter 5/Providing Contextual Menus on Collection View Cells/Providing Contextual Menus on Collection View Cells/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing Contextual Menus on Collection View Cells/Providing Contextual Menus on Collection View Cells/Default-568h@2x.png -------------------------------------------------------------------------------- /Chapter 5/Providing Contextual Menus on Collection View Cells/Providing Contextual Menus on Collection View Cells/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing Contextual Menus on Collection View Cells/Providing Contextual Menus on Collection View Cells/Default.png -------------------------------------------------------------------------------- /Chapter 5/Providing Contextual Menus on Collection View Cells/Providing Contextual Menus on Collection View Cells/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing Contextual Menus on Collection View Cells/Providing Contextual Menus on Collection View Cells/Default@2x.png -------------------------------------------------------------------------------- /Chapter 5/Providing Contextual Menus on Collection View Cells/Providing Contextual Menus on Collection View Cells/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 5/Providing Header and Footer in a Flow Layout/Providing Header and Footer in a Flow Layout/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing Header and Footer in a Flow Layout/Providing Header and Footer in a Flow Layout/1.png -------------------------------------------------------------------------------- /Chapter 5/Providing Header and Footer in a Flow Layout/Providing Header and Footer in a Flow Layout/1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing Header and Footer in a Flow Layout/Providing Header and Footer in a Flow Layout/1@2x.png -------------------------------------------------------------------------------- /Chapter 5/Providing Header and Footer in a Flow Layout/Providing Header and Footer in a Flow Layout/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing Header and Footer in a Flow Layout/Providing Header and Footer in a Flow Layout/2.png -------------------------------------------------------------------------------- /Chapter 5/Providing Header and Footer in a Flow Layout/Providing Header and Footer in a Flow Layout/2@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing Header and Footer in a Flow Layout/Providing Header and Footer in a Flow Layout/2@2x.png -------------------------------------------------------------------------------- /Chapter 5/Providing Header and Footer in a Flow Layout/Providing Header and Footer in a Flow Layout/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing Header and Footer in a Flow Layout/Providing Header and Footer in a Flow Layout/3.png -------------------------------------------------------------------------------- /Chapter 5/Providing Header and Footer in a Flow Layout/Providing Header and Footer in a Flow Layout/3@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing Header and Footer in a Flow Layout/Providing Header and Footer in a Flow Layout/3@2x.png -------------------------------------------------------------------------------- /Chapter 5/Providing Header and Footer in a Flow Layout/Providing Header and Footer in a Flow Layout/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing Header and Footer in a Flow Layout/Providing Header and Footer in a Flow Layout/Default-568h@2x.png -------------------------------------------------------------------------------- /Chapter 5/Providing Header and Footer in a Flow Layout/Providing Header and Footer in a Flow Layout/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing Header and Footer in a Flow Layout/Providing Header and Footer in a Flow Layout/Default.png -------------------------------------------------------------------------------- /Chapter 5/Providing Header and Footer in a Flow Layout/Providing Header and Footer in a Flow Layout/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing Header and Footer in a Flow Layout/Providing Header and Footer in a Flow Layout/Default@2x.png -------------------------------------------------------------------------------- /Chapter 5/Providing Header and Footer in a Flow Layout/Providing Header and Footer in a Flow Layout/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 5/Providing a Flow Layout to a Collection View/Providing a Flow Layout to a Collection View/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing a Flow Layout to a Collection View/Providing a Flow Layout to a Collection View/Default-568h@2x.png -------------------------------------------------------------------------------- /Chapter 5/Providing a Flow Layout to a Collection View/Providing a Flow Layout to a Collection View/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing a Flow Layout to a Collection View/Providing a Flow Layout to a Collection View/Default.png -------------------------------------------------------------------------------- /Chapter 5/Providing a Flow Layout to a Collection View/Providing a Flow Layout to a Collection View/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 5/Providing a Flow Layout to a Collection View/Providing a Flow Layout to a Collection View/Default@2x.png -------------------------------------------------------------------------------- /Chapter 5/Providing a Flow Layout to a Collection View/Providing a Flow Layout to a Collection View/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 6/Adding a Navigation Controller to a Storyboard/Adding a Navigation Controller to a Storyboard/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 6/Adding a Navigation Controller to a Storyboard/Adding a Navigation Controller to a StoryboardTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 6/Adding a Tab Bar Controller to a Storyboard/Adding a Tab Bar Controller to a Storyboard/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 6/Adding a Tab Bar Controller to a Storyboard/Adding a Tab Bar Controller to a StoryboardTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 6/Introducing Custom Segue Transitions to Your Storyboard/Introducing Custom Segue Transitions to Your Storyboard/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 6/Introducing Custom Segue Transitions to Your Storyboard/Introducing Custom Segue Transitions to Your StoryboardTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 6/Passing Data From One Screen to Another/Passing Data From One Screen to Another/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 6/Passing Data From One Screen to Another/Passing Data From One Screen to AnotherTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 6/Placing Images and Other UI Components on Storyboards/Placing Images and Other UI Components on Storyboards/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 6/Placing Images and Other UI Components on Storyboards/Placing Images and Other UI Components on StoryboardsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Accessing Variables in Block Objects/Accessing Variables in Block Objects/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Accessing Variables in Block Objects/Accessing Variables in Block ObjectsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Constructing Block Objects/Constructing Block Objects/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Constructing Block Objects/Constructing Block ObjectsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Constructing Your Own Dispatch Queues with GCD/Constructing Your Own Dispatch Queues with GCD/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Constructing Your Own Dispatch Queues with GCD/Constructing Your Own Dispatch Queues with GCDTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Creating Concurrency with Threads/Creating Concurrency with Threads/MacBookAir.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 7/Creating Concurrency with Threads/Creating Concurrency with Threads/MacBookAir.png -------------------------------------------------------------------------------- /Chapter 7/Creating Concurrency with Threads/Creating Concurrency with Threads/MacBookAir@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 7/Creating Concurrency with Threads/Creating Concurrency with Threads/MacBookAir@2x.png -------------------------------------------------------------------------------- /Chapter 7/Creating Concurrency with Threads/Creating Concurrency with Threads/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Creating Concurrency with Threads/Creating Concurrency with ThreadsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Creating Dependency Between Operations/Creating Dependency Between Operations/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Creating Dependency Between Operations/Creating Dependency Between OperationsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Creating Timers/Creating Timers/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Creating Timers/Creating TimersTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Exiting Threads and Timers/Exiting Threads and Timers/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Exiting Threads and Timers/Exiting Threads and TimersTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Grouping Tasks Together with GCD/Grouping Tasks Together with GCD/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Grouping Tasks Together with GCD/Grouping Tasks Together with GCDTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Introduction to Concurrency/Introduction to Concurrency/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Introduction to Concurrency/Introduction to ConcurrencyTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Invoking Background Methods/Invoking Background Methods/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Invoking Background Methods/Invoking Background MethodsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Invoking Block Objects/Invoking Block Objects/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Invoking Block Objects/Invoking Block ObjectsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Performing Non-UI Related Tasks Asynchronously with GCD/Performing Non-UI Related Tasks Asynchronously with GCD/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Performing Non-UI Related Tasks Asynchronously with GCD/Performing Non-UI Related Tasks Asynchronously with GCDTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Performing Non-UI-Related Tasks Synchronously with GCD/Performing Non-UI-Related Tasks Synchronously with GCD/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Performing Non-UI-Related Tasks Synchronously with GCD/Performing Non-UI-Related Tasks Synchronously with GCDTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Performing Tasks After a Delay with GCD/Performing Tasks After a Delay with GCD/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Performing Tasks After a Delay with GCD/Performing Tasks After a Delay with GCDTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Performing UI-Related Tasks with GCD/Performing UI-Related Tasks with GCD/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Performing UI-Related Tasks with GCD/Performing UI-Related Tasks with GCDTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Performing a Task Only Once with GCD/Performing a Task Only Once with GCD/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Performing a Task Only Once with GCD/Performing a Task Only Once with GCDTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Running Tasks Asynchronously with Operations/Running Tasks Asynchronously with Operations/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Running Tasks Asynchronously with Operations/Running Tasks Asynchronously with OperationsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Running Tasks Synchronously with Operations/Running Tasks Synchronously with Operations/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 7/Running Tasks Synchronously with Operations/Running Tasks Synchronously with OperationsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 8/Deleting Exiting Values in Keychain/Deleting Exiting Values in Keychain/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 8/Deleting Exiting Values in Keychain/Deleting Exiting Values in KeychainTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 8/Finding Values in the Keychain/Finding Values in the Keychain/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 8/Finding Values in the Keychain/Finding Values in the Keychain/Default-568h@2x.png -------------------------------------------------------------------------------- /Chapter 8/Finding Values in the Keychain/Finding Values in the Keychain/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 8/Finding Values in the Keychain/Finding Values in the Keychain/Default.png -------------------------------------------------------------------------------- /Chapter 8/Finding Values in the Keychain/Finding Values in the Keychain/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 8/Finding Values in the Keychain/Finding Values in the Keychain/Default@2x.png -------------------------------------------------------------------------------- /Chapter 8/Finding Values in the Keychain/Finding Values in the Keychain/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 8/Securing Your User Interface/Securing Your User Interface/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 8/Securing Your User Interface/Securing Your User InterfaceTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 8/Sharing Keychain Data Between Multiple Apps - Reading/Sharing Keychain Data Between Multiple Apps - Reading/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 8/Sharing Keychain Data Between Multiple Apps - Reading/Sharing Keychain Data Between Multiple Apps - ReadingTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 8/Sharing Keychain Data Between Multiple Apps - Writing/Sharing Keychain Data Between Multiple Apps - Writing/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 8/Sharing Keychain Data Between Multiple Apps - Writing/Sharing Keychain Data Between Multiple Apps - WritingTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 8/Storing Files Securely in the App Sandbox/Storing Files Securely in the App Sandbox/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 8/Storing Files Securely in the App Sandbox/Storing Files Securely in the App SandboxTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 8/Storing Values in the Keychain/Storing Values in the Keychain/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 8/Storing Values in the Keychain/Storing Values in the Keychain/Default-568h@2x.png -------------------------------------------------------------------------------- /Chapter 8/Storing Values in the Keychain/Storing Values in the Keychain/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 8/Storing Values in the Keychain/Storing Values in the Keychain/Default.png -------------------------------------------------------------------------------- /Chapter 8/Storing Values in the Keychain/Storing Values in the Keychain/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 8/Storing Values in the Keychain/Storing Values in the Keychain/Default@2x.png -------------------------------------------------------------------------------- /Chapter 8/Storing Values in the Keychain/Storing Values in the Keychain/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 8/Updating Existing Values in the Keychain/Updating Existing Values in the Keychain/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 8/Updating Existing Values in the Keychain/Updating Existing Values in the Keychain/Default-568h@2x.png -------------------------------------------------------------------------------- /Chapter 8/Updating Existing Values in the Keychain/Updating Existing Values in the Keychain/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 8/Updating Existing Values in the Keychain/Updating Existing Values in the Keychain/Default.png -------------------------------------------------------------------------------- /Chapter 8/Updating Existing Values in the Keychain/Updating Existing Values in the Keychain/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 8/Updating Existing Values in the Keychain/Updating Existing Values in the Keychain/Default@2x.png -------------------------------------------------------------------------------- /Chapter 8/Updating Existing Values in the Keychain/Updating Existing Values in the Keychain/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 8/Writing to and Reading Keychain Data from iCloud - Reading/Writing to and Reading Keychain Data from iCloud - Reading/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 8/Writing to and Reading Keychain Data from iCloud - Reading/Writing to and Reading Keychain Data from iCloud - ReadingTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 8/Writing to and Reading Keychain Data from iCloud - Writing/Writing to and Reading Keychain Data from iCloud - Writing/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 8/Writing to and Reading Keychain Data from iCloud - Writing/Writing to and Reading Keychain Data from iCloud - WritingTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 9/Converting Longitude and Latitude to a Meaningful Address/Converting Longitude and Latitude to a Meaningful Address/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 9/Converting Longitude and Latitude to a Meaningful Address/Converting Longitude and Latitude to a Meaningful AddressTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 9/Converting Meaningful Addresses to Longitude and Latitude/Converting Meaningful Addresses to Longitude and Latitude/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 9/Converting Meaningful Addresses to Longitude and Latitude/Converting Meaningful Addresses to Longitude and LatitudeTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 9/Creating a Map View/Creating a Map View/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Creating a Map View 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 9/Creating a Map View/Creating a Map View/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 9/Creating a Map View/Creating a Map ViewTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 9/Displaying Custom Pins on a Map View/Displaying Custom Pins on a Map View/Images.xcassets/BluePin.imageset/BluePin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 9/Displaying Custom Pins on a Map View/Displaying Custom Pins on a Map View/Images.xcassets/BluePin.imageset/BluePin.png -------------------------------------------------------------------------------- /Chapter 9/Displaying Custom Pins on a Map View/Displaying Custom Pins on a Map View/Images.xcassets/BluePin.imageset/BluePin@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vandadnp/ios-7-programming-cookbook-source-codes/8bb93ff4ac3aa64d5929d7d0d1e353f1fc598984/Chapter 9/Displaying Custom Pins on a Map View/Displaying Custom Pins on a Map View/Images.xcassets/BluePin.imageset/BluePin@2x.png -------------------------------------------------------------------------------- /Chapter 9/Displaying Custom Pins on a Map View/Displaying Custom Pins on a Map View/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 9/Displaying Custom Pins on a Map View/Displaying Custom Pins on a Map ViewTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 9/Displaying Directions on The Map/Displaying Directions on The Map/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 9/Displaying Directions on The Map/Displaying Directions on The MapTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 9/Displaying Pins on a Map View/Displaying Pins on a Map View/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 9/Displaying Pins on a Map View/Displaying Pins on a Map ViewTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 9/Displaying Pins with Different Colors on a Map View/Displaying Pins with Different Colors on a Map View/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 9/Displaying Pins with Different Colors on a Map View/Displaying Pins with Different Colors on a Map ViewTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 9/Handling the Events of a Map View/Handling the Events of a Map View/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 9/Handling the Events of a Map View/Handling the Events of a Map ViewTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 9/Introduction to Core Location and Maps/Introduction to Core Location and Maps/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 9/Introduction to Core Location and Maps/Introduction to Core Location and MapsTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 9/Pinpointing the Location of a Device/Pinpointing the Location of a Device/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 9/Pinpointing the Location of a Device/Pinpointing the Location of a DeviceTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 9/Searching on a Map View/Searching on a Map View/ViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ViewController.h 3 | // Searching on a Map View 4 | // 5 | // Created by Vandad NP on 24/06/2013. 6 | // Copyright (c) 2013 Pixolity Ltd. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Chapter 9/Searching on a Map View/Searching on a Map View/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Chapter 9/Searching on a Map View/Searching on a Map ViewTests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | --------------------------------------------------------------------------------