iOS: usando modificadores de dispositivo para carregar arquivos xib?

Você pode usar um modificador de dispositivo (por exemplo, ~ ipad) para fornecer uma chave específica do dispositivo no Info.plist e especificar uma imagem de inicialização específica do dispositivo (Default.png para iPhone e Default ~ ipad.png para iPad, para exemplo). Essas duas coisas são especificamente mencionadas emDocumentos da Apple, mas eles não dizem que isso funcionará para outros tipos de arquivos.

Descobri (por acidente) que isso funciona para carregar arquivos .xib viainitWithNibName:bundle:. Por exemplo, eu posso ter o MyView.xib e o MyView ~ ipad.xib, e este código:

MyViewController *viewController = [[MyViewController alloc] 
                                     initWithNibName:@"MyView" bundle:nil];

... carregará totalmente o MyView ~ ipad.xib em um iPad e o MyView.xib em outros dispositivos.

Então, 1) Isso está documentado em algum lugar? Eu com certeza não consegui encontrar nenhum documento da Apple. É mais prático do que verificar UI_USER_INTERFACE_IDIOM () e codificar dois nomes de pontas diferentes em todos os lugares, mas eu meio que não confio nisso se não estiver documentado.

E 2) Alguém sabe em qual versão do iOS isso começou a funcionar? Eu só tentei no 4.2, e funciona lá. Os modificadores de dispositivo em geral (mesmo para os itens documentados listados acima) têm um mínimo de 4,0.

questionAnswers(4)

yourAnswerToTheQuestion