2012-01-31 12 views
0

私は客観Cでの基本的なメソッド(関数)を作成しようとしているといくつかのエラーを取得していますが、ここでのコードは次のとおりです。Objective-Cで基本メソッドを作成して呼び出すにはどうすればよいですか?

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    // Do any additional setup after loading the view from its nib. 

    [self setupWebView]; 
} 

- (void)setupWebView { 
    NSLog(@"Testing"); 

} 

私はこのエラーを取得する:ために「読み」

レシーバータイプインスタンスメッセージはセレクタ 'setupWebView'でメソッドを宣言していません

私が間違っていることは何ですか?

答えて

4

あなたのクラスのヘッダに-(void)setupWebViewと宣言しましたか?コンパイラはあなたのクラスがそれを実装しているとは思わないようです。ヘッダーに追加すると、問題が修正されます。

+0

あなたが公共の@interface-(void)setupWebViewをエクスポートしたくない場合は、easiesの方法は、あなたの.mファイルであなたの@interfaceのクラス拡張を持つことです – Talon

5

コンパイラは、より上のクラスに対して宣言されているメソッドを見た場合に受信者が応答するものにのみ同意します。したがって、あなたのクラスの宣言のメソッドを宣言するか、クラスの宣言または実装を宣言してください。私のヘッダファイルに追加するのを忘れそうそう

// additional internal methods for my class 
@interface MyClass() 

- (void)setupWebView; 

@end 

@implementation MyClass 

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    // Do any additional setup after loading the view from its nib. 

    [self setupWebView]; 
} 

- (void)setupWebView { 
    NSLog(@"Testing"); 

} 

@end 
関連する問題