0

メソッドが呼び出されないのはなぜですか?

UIViewController は、myMethod という UIView のメソッドを呼び出す必要があります。

初期の UIView viewDidLoad でのみ機能します。

ビューがロードされた後、someOtherMethod から「myMethod」を呼び出すことができません。そして、私はその理由を理解していませんか?XCode はメソッドが存在することを認識し、メソッドがヘッダーに公開されています。

MyViewController.h

#import “MyView.h”
@interface MyViewController : UIViewController {
     MyView *mv;
}

MyViewContoller.m

#import “MyView.h”
- (void)viewDidLoad
{
    mv = [[MyView alloc] initWithFrame:self.view.frame];
    [self.view addSubview:mv];

    //THIS WORKS IF CALLED FROM viewDidLoad
    [mv myMethod];
}

- (void) someOtherMethod {

    //THIS DOESN’T WORK IF CALLED LATER
    [mv myMethod];
}

MyView.h

- (void) myMethod;

MyView.m

- (void) myMethod {
     NSLog(@"My Method");
}
4

0 に答える 0