2013-01-19 54 views
1

我得到的錯誤是:ARC語義問題:針對 'UIStoryboard' 不可見的@interface聲明選擇

UIStoryboard '爲無可見@interface'宣佈選擇 instantiateInitialViewControllerWithIdentifier:'

感謝您的幫助。

#import "initViewController.h" 
#import "ECSlidingViewController.h" 
#import "MenuViewController.h" 

@interface initViewController() 

@end 

@implementation initViewController 

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil 
{ 
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; 
    if (self) { 
     // Custom initialization 
    } 
    return self; 
} 

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    self.topViewController = [self.storyboard instantiateInitialViewControllerWithIdentifier:@"Main"]; 

} 

- (void)didReceiveMemoryWarning 
{ 
    [super didReceiveMemoryWarning]; 
    // Dispose of any resources that can be recreated. 
} 

@end 
+0

您應該將'initViewController'(看起來像一個方法名)這個類重命名爲'InitialViewController'。類名應該是名詞。目前你的課堂名稱更多是一個動詞。 – rmaddy

+1

會做。來自Java和我有各種不良的編程習慣。 – STANGMMX

+0

有趣的是,這是如何關閉的,因爲「這個問題不可能對未來的訪問者有所幫助」。這當然有助於我*,因爲我和提問者有同樣的問題,並且發現接受的答案非常有用。 –

回答

2

UIStoryboard沒有實現該名稱的方法。它確實實現了instantiateViewControllerWithIdentifier:,它看起來像你所需要的。

+0

啊,是的,你說得對。感謝那。 – STANGMMX

0

(1)將#import <UIKit/UIKit.h>添加到文件頂部&請確保您完全正確地拼寫了該方法。

(2)類名應該大寫。

相關問題