Some time ago I had written a post about how to use UITableView cells and make them work as a drop-down list. Anyone who had read that post might understood that when working with UITableViews you can do things more than the usual and common ones, and you can go as far as your imagination and the technology let you go. Indeed, when knowing how to work with UITableViews in a more advanced level, then you can create more flexible apps that make your users happier.
👋 I share knowledge and experience on iOS 📱 & macOS 💻 development! Most probably there is something useful here for you 👈 !
For a long time I wanted to write about a specific topic that surely every programmer encounters in his/her programming life. A topic not that difficult, but an important one. That is, how to scroll a textfield to a visible area of the view when it’s obscured by the keyboard and how to put it back into its original position, after the keyboard vanishes.
The topic of this tutorial is about the AVFoundation framework, which is a powerful set of tools that let programmers to work with both audio and video related tasks. In here, I’ll make a small introduction on how to play audio files using the framework, which is the most common task for the majority of the developers.
Welcome to the second part of this tutorial! At the first part we talked about a couple of things on how to import contacts from the device’s Address Book and we developed a demo app to see everything in action. What we really did, was to let us tap on a contact’s name, return back to our app and then select specific pieces of information regarding the selected contact, which we displayed on a table view.
It happens many times some of the iPhone apps we implement to need access to kind of information imported in ways other than the user’s input, or getting data from a file or downloading from the web. A kind of that information is the contacts info existing in the Address Book of the device.
The Page Control, is a useful tool that allows to display data on an iPhone app in the form of pages. To get the idea, just thing of the main screen of the iPhone, where you navigate among pages to the left and right to display all the apps existing on the device.
When creating iOS applications, the need to pick a value from a list while displaying an UITableView comes up quite often. One obvious solution to that matter, and the hard one in most cases, is to load another UIView which may contain an UIPickerView or an UITableView that will list the values you need, let the user pick the value and then get back into your table and set the picked (by the user) value. Another solution, more attractive and probably easier for the user is to display the list you need inside the UITableView that’s been shown. Perhaps that approach sounds more difficult, but once you try it you’ll find out yourself how fast, easy and beautiful solution is.
When building iPhone applications that support or provide text input, it’s often necessary to create some extra buttons (or other controls) beyond the ones provided by the default keyboard interface. Those buttons should be created for specific operations needed by your application, such as moving to the next or previous text field, make the keyboard disappear e.t.c. To understand what exactly this is all about, just see what’s happening when you are using the Safari browser and you type username/password values to login in your e-mail account. Just right above the keyboard, there are two buttons that allow you to move to the next or previous field and a third button that allows you to close the keyboard and see the whole browser again.
It is often needed to give the user the ability to choose among various options when creating an application. In that case, the
UIPickerView it’s a nice (and many times the best) choice to do that. The UIPickerView can be easily created using the Interface Builder, but unfortunately Apple doesn’t allow us to change its height through IB. Besides that, sometimes there is the need to create it and place it on-screen manually (programmatically) for a lot of reasons.