[英]Loading UITabBarController from separate XIB into Window app on iPhone
我正在制作自己編寫的iPhone版本的Android應用程序(請耐心等待)。 該應用程序具有一個主要視圖,該視圖主要顯示一個Web視圖以及一些其他控制Web視圖的控件。 我已經在UIWindow
運行了應用程序的這一部分。
該應用程序的另一部分是“個人資料”頁面,該頁面允許用戶在表單中輸入一些個人資料信息。 由於選項數量眾多,我使用UITabBarController
將事物接口放在單獨的XIB中,以將所有內容保持在一起。 我已經為應用程序的這一部分提供了一個委托類,以便可以在視圖中的表單字段上進行操作。
當應用啟動時,應該在首次運行時向用戶顯示“配置文件”視圖,然后在用戶在其應用中選擇“配置文件”后再顯示配置文件視圖。
我遇到的問題是,我似乎找不到一個好的示例(或對它的理解),如何使應用程序加載視圖及其委托。 如果這是在Android下,則我將Activity
子類化,並使其加載適當的接口文件。
到目前為止,我有一個視圖控制器:
@implementation customizeViewController
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
if ((self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil])) {
// Custom initialization
}
return self;
}
- (void)dealloc {
[super dealloc];
}
@end
在應用程序委托標頭中,我具有用於保存“個人資料”視圖的此設置:
UIView *CustomizeWindow;
在didFinishLaunchingWithOptions
我具有以下內容:
CustomizeWindow = [[customizeViewController alloc] initWithNibName:@"CustomizeWindow" bundle:[NSBundle mainBundle]];
[window makeKeyAndVisible];
...其中CustomizeWindow
是“配置文件”視圖文件的文件名。
我嘗試了幾種不同的顯示方式,例如將其作為子視圖添加到窗口和presentModalViewController
均未成功。 我懷疑這個謎題中缺少我想要的東西,因此我們將不勝感激。
從我可以閱讀的所有內容來看,沒有辦法真正做到這一點。 解決方案是將所有內容都扔掉並簡化它。 在這種情況下,使用UIScrollView的自定義視圖控制器將包含其他視圖,然后以編程方式加載其他xib文件。
像這樣的東西:
NSArray *pages = [[NSBundle mainBundle] loadNibNamed:@"CustomizePage1" owner:self options:nil];
UIView *page1 = [pages objectAtIndex:0];
[page1 setBounds:CGRectMake(0, -20, page1.frame.size.width, page1.frame.size.height)];
[self.scroller addSubview:page1];
對要加載到滾動視圖中的每個XIB執行上述操作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.