Episodes
In this part we’ll talk about how to make your Core Data powered app work with iCloud. This involves adding an option to your persistent store coordinator which will allow Core Data to write log files to iCloud. When changes are detected, the local Core Data store can merge them using those log files. Here are the iCloud methods I added to the MasterViewController. First the observers under viewDidLoad:- (void)viewDidLoad { [super viewDidLoad]; ...
Published 05/15/14
In this part I’ll show you how to use your app’s ubiquitous folder to store arbitrary files in a user’s iCloud store. We’re not going to cover the UIDocument class here because it adds a layer of complexity to an already difficult subject, and for simple files it’s just not necessary. We’ll also cover how to download new files if iCloud changes have been detected. There are two code snippets I’m referencing here: one is the method to retrieve your iCloud Documents folder (don’t forget to...
Published 05/14/14
In this part I’ll show you how to store and retrieve data using the NSUbiquitousKeyValueStore singleton, and how to receive the relevant notification so that your app can react if data has changed in iCloud. Watch the whole series * Part 1 is about Setup and Prep Work * Part 2 is about using Key/Value Storage * Part 3 is about using Document Storage * Part 4 is about using Core Data with iCloud * and Part 5 is about the initial import into the Core Data store Enjoy! Watch the...
Published 05/13/14
In this screencast series I’ll show you how to use iCloud in your iOS apps. We’ll discuss the whole picture, starting with how to setup Xcode and your app, including App ID and Provisioning Profiles and I’ll demonstrate how to use all three flavours of iCloud: Key Value Storage Document Storage and iCloud with Core … Continue reading How to use iCloud in your iOS Apps →
Published 05/13/14
In this screencast I’ll show you how to dismiss the iOS Keyboard, which is commonly brought up by a UITextField – but doesn’t want to leave easy once summoned. It’s easy to overlook a step in this procedure, so I thought a screencast is in order. We’re discussing two dismissal options here: when the DONE … Continue reading How to dismiss the keyboard from a UITextField in iOS →
Published 05/09/14
I’ve previously shown you how to populate an NSTableView using Bindings and an array controller. Today I’ll show you how to do it in code. It’s relatively simple and very similar to powering a UITableView. The main difference is that in Cocoa we don’t have a controller object that comes bundled with our view, so … Continue reading How to populate an NSTableView in code →
Published 05/04/14
In this screencast I will show you how to bind a Table View to an Array Controller in Cocoa, using Xcode 5.1 and OS X Mavericks. We’re using Core Data to save our entries and – check it out – we’re not writing a single line of code! Cocoa Bindings is one of the most … Continue reading How to bind an NSArrayController to an NSTableView →
Published 04/18/14
You may have heard this expression before: “You need to tear down your Core Data stack before you do xyz”. It’s frequently mentioned in the Apple documentation – sadly without telling us what on earth this means or how to do it. I had assumed that it means rebuilding every aspect of Core Data, which … Continue reading How to tear down your Core Data Stack →
Published 04/09/14
In this episode I will show you how to use the Git Branch feature in Xcode 5.1. Branches are helpful if you’re developing your app. You can isolate a “working” version, create a new branch and fiddle with new features that may destabilise your project. You can then commit your changes – working or not – to a separate branch, and when all is stable again you can merge them back into the master project. Watch the full course in one convenient playlist:Catch this episode on my iOS Dev Diary...
Published 04/07/14
In this episode I will show you how to make use of Tags in Git. This is not supported in Xcode or GitHub for Mac at the time of this recording (April 2014). I will also show you how to utilise the Tag/Release feature on GitHub.com. Tags are a useful feature if you want to mark versions of your software before you add new features. With Tags you can always go back to the code of a release. We’re using Xcode 5.1 and the Terminal utility for this. Enjoy! Watch the full course in one...
Published 04/07/14
In this course I will show you how to create a searchable table view in Xcode 5.1 and iOS 7. The app will also be compatible with iOS 6. There are six parts in total: * Part 1: an overview of what we’d like to achieve * Part 2: we’ll build the table view and populate it with dummy data * Part 3: hooking up the UISearchDisplayController * Part 4: displaying search results * Part 5: hiding the UISearchBar when the app launches (and activating it with a button) * Part 6: hiding the...
Published 04/03/14
In this episode I will show you how to push an Xcode project to GitHub.com. This is useful if you want to share code you have written with others. The GitHub for Mac app makes this a breeze because it talks to GitHub and creates a remote repo on your behalf. It also sets that new repo as a remote in your project. Watch the full course in one convenient playlist:Catch this episode on my iOS Dev Diary Podcast:
Published 04/03/14