我正在開發一個應用程序。我正在使用基於Single View的應用程序模型創建通用應用程序。所以,我需要創建一個新班級。但是,它只提供一個xib。我需要iPhone和iPad的兩個xib。請告訴我如何爲一個班級創建兩個xib。如何在通用應用程序中創建新的UIViewController
1
A
回答
3
創建一個新的同名..讓假設你的視圖控制器的名字是「NewViewController」 ..您的廈門國際銀行將成爲iphone NewViewController~ipad
爲iPad和NewViewController~iPhone
..所以當你實現initWithNibName
只寫基本的名字對於你xib這是NewViewController
和iOS將關注基於當前使用的平臺調用匹配xib ..並且不要忘記在新的xib中將文件所有者的自定義類指派爲您的新類,如圖像下面。
在創建新的廈門國際銀行查看這些圖片:
0
Malek_Jundi對如何創建並加載iphone筆尖文件和一個明確的指引iPad兼容。
如果你想爲每個個案(iPhone或iPad)創建不同的類,你可以使用IF語句是這樣的:
UIViewController *target;
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
target = [[NewViewController alloc] initWithNibName:@"NewViewController" bundle:[NSBundle mainBundle]];
} else {
target = [[NewViewController_ipad alloc] initWithNibName:@"NewViewController" bundle:[NSBundle mainBundle]];
}
但我懶得輸入「IF」語句多次在我的代碼爲iphone/ipad創建特定的類。我有一個替代方法:
- (Class)idiomClassWithName:(NSString*)className
{
Class ret;
NSString *specificName = nil;
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad) {
specificName = [[NSString alloc] initWithFormat:@"%@_ipad", className];
} else {
specificName = [[NSString alloc] initWithFormat:@"%@_iphone", className];
}
ret = NSClassFromString(specificName);
if (!ret) {
ret = NSClassFromString(className);
}
return ret;
}
- (void)createSpecificNewController
{
Class class = [self idiomClassWithName:@"NewViewController"];
UIViewController *target = [[class alloc] initWithNibName:@"NewViewController" bundle:[NSBundle mainBundle]];
//...
}
相關問題
- 1. 如何創建通用應用程序?
- 2. 如何通過複製現有的UIViewController來創建新的UIViewController?
- 3. 如何在Django應用程序中創建新的網址?
- 4. 如何在新的Xcode中創建一個空應用程序
- 5. 如何在iTunes中創建新的應用程序連接
- 6. 如何在代碼中創建新的應用程序設置
- 7. 如何創建新聞通訊應用程序?
- 8. 如何通過我的angular2應用程序在Odoo中創建新項目?
- 9. 如何在android應用程序中創建通知數量?
- 10. 如何在iPhone應用程序中創建本地通知
- 11. 如何在pinax中創建新應用程序?
- 12. 如何如何創建,無需重新安裝在新版本的應用程序更新應用程序的更新補丁爲Windows創建應用
- 13. 如何在iPhone/iPad上創建通用應用程序?
- 14. 爲iTunes創建通用應用程序?
- 15. 創建通用應用程序(IPhone/Ipad)
- 16. 使用UIViewController和Cocos2D創建iPhone應用程序
- 17. 如何創建每天更新的iOS應用程序新聞
- 18. iPad應用程序,如何在uiviewcontroller上顯示uiviewcontroller
- 19. 我應該如何創建可更新的應用程序?
- 20. 創建新的Rails應用程序時
- 21. 無法創建新的應用程序?
- 22. 創建新應用程序的起點
- 23. 創建新的應用程序
- 24. 如何使用rails> 3.0.3創建新的rails應用程序?
- 25. 如何自動創建在谷歌新的應用程序通過API
- 26. 如何在應用程序中創建應用內結算?
- 27. 如何在Sakai中運行由應用程序構建器創建的新JSF全原始應用程序
- 28. 如何在我的應用程序中創建android應用程序
- 29. 使用activeadmin在Rails應用程序中創建新的crud
- 30. 創建一個應用程序,通過點擊創建其他應用程序
這意味着完全我們需要創建2.h文件和2.m文件具有相同的名稱。我正確嗎? – user1400581
不,一個.h和一個.m,和兩個xib。再次閱讀我的答案 –
如何創建帶有.h和.m文件的xib。 – user1400581