0
我已閱讀了很多有關從iPhone應用程序製作通用應用程序的信息。 但我沒有發現任何關於我的情況: 我的應用程序的一部分內置於Storyboard中,但很少有視圖在.xib-s中創建。 如何連接它並在其中創建通用應用程序?在iOS上製作通用應用程序
我已閱讀了很多有關從iPhone應用程序製作通用應用程序的信息。 但我沒有發現任何關於我的情況: 我的應用程序的一部分內置於Storyboard中,但很少有視圖在.xib-s中創建。 如何連接它並在其中創建通用應用程序?在iOS上製作通用應用程序
我認爲最常見的情況是在實例化視圖控制器之前檢查設備類型。在這一點上,您可以使用適當的筆尖實例化適當的視圖控制器。需要注意的是爲iPad VS iPhone,你可以選擇使用:
可以明顯地跳過設備檢查,如果你使用相同的視圖控制器具有相同筆尖(因爲會沒有代碼差異)。此外,您不需要在代碼中不會在多種設備類型上運行的區域進行設備檢查。例如,只有iPad的視圖控制器內的代碼可以假設iPad並跳過設備檢查。你確定的代碼只能在iPhone上運行,也可以跳過檢查並假設iPhone。完全可以這麼說,儘量不要用這樣的檢查來清理你的代碼。
- (IBAction) handleButtonPress {
UIViewController *vc = nil;
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
vc = [[MyIPadViewController alloc] initWithNibName:@"MyIPadViewController" bundle:nil];
} else {
vc = [[MyViewController alloc] initWithNibName:@"MyViewController" bundle:nil];
}
[self presentViewController:vc animated:YES completion:NULL];
}
你能更具體嗎?創建通用應用程序時,您經常(但不總是)爲iPad和iPhone/iPod Touch使用單獨的故事板和/或.xib文件。您的視圖控制器會根據所運行的設備選擇要加載的視圖。 – Caleb
但我應該在哪裏檢查設備類型?在每個控制器的Init方法中? –