Uiview 为什么我的方法没有被调用?

Uiview 为什么我的方法没有被调用?,uiview,methods,uiviewcontroller,Uiview,Methods,Uiviewcontroller,为什么我的方法没有被调用 我的UIViewController应该在我的UIView中调用名为myMethod的方法 它仅适用于初始UIView viewDidLoad 加载视图后,我无法从其他方法调用“myMethod”。我不明白为什么?XCode识别出该方法存在,并且该方法在我的头中公开 MyViewController.h #import “MyView.h” @interface MyViewController : UIViewController { MyView *mv;

为什么我的方法没有被调用

我的UIViewController应该在我的UIView中调用名为myMethod的方法

它仅适用于初始UIView viewDidLoad

加载视图后,我无法从其他方法调用“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");
}

我唯一的猜测是,
someOtherMethod
实际上没有被调用。其他一切看起来都很好。尝试放置一个
NSLog(@“someothermethodcalled!”)也在那里,以查看是否调用过该方法。是的,我也这么认为,并且我调用了NSLog(@“someothermethodcalled”);它调用了它,但实际上从未激发。你的意思是NSLog确实显示在日志中,或者“它从未激发”,因此你从未看到NSLog?NSLog显示在日志中,但从未调用myMethod。如果从viewDidLoad调用myMethod,则NSLog(@“My Method”);出现了。只有在加载视图后才不会调用它。