Launch an Alert from a Closure Safely
Your app can get into problems when you launch UI from others threads, such as closures. For example, you might have an app that going to ask for permissions for things like photos, notifications, or location data. The system usually handles those, but you might want to be even more exclusive on what to use,…
Change UIColors to RGB and HSB colors
One dilemma you’ll find when working with colors is switching between color systems. There’s two you’ll most often be using: the Red-Green-Blue or RGB and Hue-Saturation-Brightness or HSB. Download the Exercise file and run. It will give you the HSB value, but what if you want a RGB Value for that color? What if you…
Use Dynamic Type
For reading ease and visual accessibility you should be using dynamic fonts whenever possible. Let’s look at an example you can get from the download files. I’ve run the Split View Controller from a previous tip in landscape on an iPad Pro 9.7 inch. Take a look at the labels on the table. They are…
Actions in Table Views
Sometimes table views could use a few buttons. There’s two delegates which create swipe buttons on table view cells. Let’s learn how you can implement these buttons and an interesting hidden feature you can do with them. There is two delegate methods, one for the leading swipe configuration and one for the trailing Swipe configuration.…
Learn how to use haptics to give phone vibrations and physical sensation to your iPhone apps.
Fix Stack View Disasters
Learn how to take a disaster of nested stack views and untangle it into a great user interface.
Sliders as Knobs
You’ve seen other apps rotate views, but you may have no idea how to do it yourself. Let me show you one way to rotate views. We’ll make a simple knob control you might be able to use in your apps. Download the example file. On the storyboard, I added an UIImageView of a knob…
Time Picker Part 2: Strings to Time Intervals
In the last tip, I showed you how to use UIPickerControllers to make a time interval input. What I didn’t show you is how to output that. In this tip I’ll show you how to read and convert data from a picker that has a separate delegate. If you download the exercise file, you’ll have…