Episodes
In this series I’ll show you how to create a simple Day Counter on iOS, using Objective-C and Xcode 9. The idea is to set a date in a settings screen, and then see how many days have elapsed on the main screen right after launching the app. This is a 3-Part Mini-Series: * Part 1 is all about building the interface in Interface Builder * Part 2 is about coding the NSDate subtraction methods, using NSCalendar and loading/saving data using NSUserDefaults * Part 3 will introduce Key/Value...
Published 04/11/18
Published 04/11/18
In this series I’ll show you how to create a simple Day Counter on iOS, using Objective-C and Xcode 9. The idea is to set a date in a settings screen, and then see how many days have elapsed on the main screen right after launching the app. This is a 3-Part Mini-Series: * Part 1 is all about building the interface in Interface Builder * Part 2 is about coding the NSDate subtraction methods, using NSCalendar and loading/saving data using NSUserDefaults * Part 3 will introduce Key/Value...
Published 04/04/18
In this series I’ll show you how to create a simple Day Counter on iOS, using Objective-C and Xcode 9. The idea is to set a date in a settings screen, and then see how many days have elapsed on the main screen right after launching the app. This is a 3-Part Mini-Series: * Part 1 is all about building the interface in Interface Builder * Part 2 is about coding the NSDate subtraction methods, using NSCalendar and loading/saving data using NSUserDefaults * Part 3 will introduce Key/Value...
Published 03/29/18
The second part of this mini-series about presenting another UIViewController on top of a UISplitViewController in iOS 9 and Xcode 7. Check out the first part here, complete with code snippets and a link to the full project. Enjoy! Watch the full course in one convenient playlist:Catch this episode on my iOS Dev Diary Podcast:
Published 12/06/15
Since its introduction in iOS 5, our good friend the UISplitView Controller has always had a really annoying habit: it has to be the root view controller in our apps. This means that it cannot be presented from any other view controller, nor can the split view controller present other view controllers. This sucks because 99% of all apps probably need to present a user choice overlay at some point during the lifetime of an app. While some apps may get away with showing a Popover on iPad, many...
Published 11/30/15
In this final part of our project we’ll finish off the app by implementing a little Key Value Observation magic. This will let us update our second UITableViewController when new search results are to be displayed. Check out the first part here, as well as a link to my demo project. Enjoy! Watch the full course in one convenient playlist:Catch this episode on my iOS Dev Diary Podcast:
Published 11/25/15
In this part of our series we’ll take a look at how we actually filter the data that is displayed in the searchable table view. We do that using an NSPredicate. Check out the first part here, as well as a link to my demo project. Enjoy! Watch the full course in one convenient playlist:Catch this episode on my iOS Dev Diary Podcast:
Published 11/18/15
In the previous part we’ve setup our project and the relevant graphical bits to make the app display the table view. Now it’s time to implement the UISearchController object that will be at the heart of letting users sift through our search results. We’ll do that in this part. Check out the first part here, as well as a link to my demo project. Enjoy! Watch the full course in one convenient playlist:Catch this episode on my iOS Dev Diary Podcast:
Published 11/11/15
In this 4 part course I’ll show you how to build a searchable UITableView using iOS 9.1 and Xcode 7.1. * Part 1 will talk you through how to build a UITableView with dummy data * In Part 2 I’ll show you how to use a UISearchController to display a second table view * In Part 3 we’ll discuss how to filter results using an NSPredicate * And in Part 4 we’ll see how to communicate those search results to the second table view via KVO. The whole course is about 50 minutes long, and I’ll...
Published 11/05/15
A while ago I’ve written an article about how to load different storyboards depending on the screen size of an iOS device. Back in those days (2013) it was all a bit simpler than it is today, and I looked into it mainly because I loathed Auto Layout so much. I felt it was time … Continue reading How to load UIStoryboards depending on screen height in iOS →
Published 05/19/15
In this video I’ll show you how to build a UICollectionView from scratch in Xcode 6. The class is available for both iPhone and iPad since iOS 6. If you know how to build a UITableView then building a UICollectionView will be familiar to you. I’ll start with a single view application, delete the ViewController … Continue reading How to build a UICollectionView in iOS 8 →
Published 02/02/15
The Unwind Segue was introduced in iOS 6 to make retrieving data from a dismissed view controller easier. A regular Segue allows us to send data from one view controller to another, but it’s not easy to bring data back if the user has changed or added details in that view controller. That’s where an … Continue reading How to create an Unwind Segue in iOS 8 →
Published 01/29/15
In this screencast I’ll talk you through the lingo of Core Data: those scary classes and expressions that you’ll frequently come across. In fact, this is the start of a new series: Core Data Nuggets are bite-sized chunks about the framework. Dip in and out or watch them all in a row and learn how … Continue reading Core Dara Nugget #1: How to speak Core Data →
Published 06/25/14
And finally in the last part I’ll show you how to restore purchases. Note that you must implement a restore option for non-consumable products or the review team will reject your app. Demo Project You can download the full source code of what I’m building in this screencast on GitHub: * https://github.com/versluis/In-App-Purchases/ Further Reading I’m following my earlier two articles almost to the letter, here they are for reference: *...
Published 06/14/14
In this part we’ll see our hard work comes to life on a real device while we’re performing our purchase in the App Store Sandbox. Demo Project You can download the full source code of what I’m building in this screencast on GitHub: * https://github.com/versluis/In-App-Purchases/ Further Reading I’m following my earlier two articles almost to the letter, here they are for reference: * http://pinkstone.co.uk/how-to-create-a-single-in-app-purchase-in-ios-7/ *...
Published 06/13/14
Learn how to make the purchase in this part of our series about in-app purchases. Demo Project You can download the full source code of what I’m building in this screencast on GitHub: * https://github.com/versluis/In-App-Purchases/ Further Reading I’m following my earlier two articles almost to the letter, here they are for reference: * http://pinkstone.co.uk/how-to-create-a-single-in-app-purchase-in-ios-7/ *...
Published 06/12/14
In this part we’ll setup the observers needed to react to responses from the App Store. Demo Project You can download the full source code of what I’m building in this screencast on GitHub: * https://github.com/versluis/In-App-Purchases/ Further Reading I’m following my earlier two articles almost to the letter, here they are for reference: * http://pinkstone.co.uk/how-to-create-a-single-in-app-purchase-in-ios-7/ *...
Published 06/11/14
In this part I’ll talk you through building a custom shop class and how to make “first contact” with the App Store. Demo Project You can download the full source code of what I’m building in this screencast on GitHub: * https://github.com/versluis/In-App-Purchases/ Further Reading I’m following my earlier two articles almost to the letter, here they are for reference: * http://pinkstone.co.uk/how-to-create-a-single-in-app-purchase-in-ios-7/ *...
Published 06/10/14
In this 7-part screencast series I’ll show you how to create an In-App Purchase in iOS 7 with Xcode 5.1. The course will run you through everything from setting up your product in iTunes Connect, creating a custom shop class for easy re-use, making “first contact” with the App Store and how to deal with … Continue reading Creating an In-App Purchase in iOS 7 and Xcode 5.1 →
Published 06/09/14
In this series I’ll show you how to create Popovers on iPad. They’re fairly easy to create once you get the hang of the inner workings of the UIPopoverController. I’ll show you how to create basic Popover in code and in your Storyboard, and we’ll discuss how you can retrieve data from a Popover when it’s dismissed. We’ll do this with a simple UIDatePicker. In the last video I’ll demonstrate how you can pick images from the camera roll using the UImagePickerController with a Popover – which...
Published 06/02/14
In this series I’ll show you how to create Popovers on iPad. They’re fairly easy to create once you get the hang of the inner workings of the UIPopoverController. I’ll show you how to create basic Popover in code and in your Storyboard, and we’ll discuss how you can retrieve data from a Popover when it’s dismissed. We’ll do this with a simple UIDatePicker. In the last video I’ll demonstrate how you can pick images from the camera roll using the UImagePickerController with a Popover – which...
Published 06/01/14
In this series I’ll show you how to create Popovers on iPad. They’re fairly easy to create once you get the hang of the inner workings of the UIPopoverController. I’ll show you how to create basic Popover in code and in your Storyboard, and we’ll discuss how you can retrieve data from a Popover when … Continue reading How to use Popovers on iPad →
Published 05/30/14
Sometimes it’s just easier to start from an existing Storyboard rather than build everything again from scratch. Especially so when you want to create an iPad version of your iPhone app. When you change your deployment info to Universal, Xcode even offers to copy your existing storyboard for you. That’s really nice – but even … Continue reading How to convert your iPhone Storyboard into an iPad Storyboard →
Published 05/19/14
In this final part of the series I’ll let you in on a little secret that will help our app synchronise iCloud Core Data for the first time when it’s installed on another device. Some devices it appears don’t display existing iCloud results upon first launch. To remedy this, I’ll show you how to re-fetch the Fetched Results Controller in your sample app. 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...
Published 05/16/14