For the More Curious: Localizing XIB files without Base Internationalization

Before Xcode had the Base internationalization feature, the localizable strings option was not available. Instead, you would maintain a XIB file for every locale that you wanted to support. So, you would have an en.lproj/BNRDetailViewController.xib and an es.lproj/BNRDetailViewController.xib. As you can imagine, maintaining every XIB in every language you wanted to support was a hassle.

To help with the creation and maintenance of localized XIB files, you could use a command-line tool named ibtool to suck the strings from your native language XIB file into a strings file. Then, you would translate these strings and create a new XIB file for each language. ...

Get iOS Programming: The Big Nerd Ranch Guide now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.