2012-03-22 34 views
7

Tôi đang cố gắng gọi chương trình bảng phân cảnh của mình theo cách lập trình. kịch bản của tôi bao gồm các nội dung sau:Gọi bảng phân cảnh có lập trình trong ủy quyền

[Navigation điều khiển] -> [MainMenuView] -> [DetailsView]

Các "MainMenu" nhận dạng được đặt trong [MainMenuView]

các Vấn đề i' m có là màn hình hiển thị trống. tôi cần phải làm gì?

Cảm ơn.

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{  
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil]; 

    MainMenuView *rootViewController = [storyboard instantiateViewControllerWithIdentifier:@"MainMenu"]; 

    return YES 
} 

Trả lời

2

Bạn cần phải thiết lập thuộc tính rootViewController của cửa sổ ứng dụng của bạn:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{  
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil]; 
    MainMenuView *rootViewController = [storyboard instantiateViewControllerWithIdentifier:@"MainMenu"]; 

    self.window.rootViewController = rootViewController; 

    return YES; 
} 
+0

tôi đã đặt nó nhưng nó vẫn trống – RockBaby

+0

@RockBaby: 'tài sản window' của appdelegate không được thiết lập nào, bạn đang gửi tin nhắn nil. Thực hiện việc này trước tiên trong didFinish ...: 'self.window = [[UIWindow alloc] initWithFrame: [[UIScreen mainScreen] bounds]];' – Josh

16

Bạn cần phải đầu tiên tạo ra các cửa sổ bằng tay và sau đó thêm rootViewController trong nó (các câu trả lời trước đã gần đúng):

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil]; 

    UIViewController *mainViewController = [storyboard instantiateInitialViewController]; 

    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 
    self.window.rootViewController = mainViewController; 
    [self.window makeKeyAndVisible]; 

    return YES; 
} 
+0

Điều này không còn đúng đối với ios 9 –

Các vấn đề liên quan