我被困在这一个小时..
我有一个实现Method1
在这个ViewController中,我添加了一个子视图:
barView = [[[NSBundle mainBundle] loadNibNamed:@"BarView" owner:self options:nil] objectAtIndex:0];
[barView initWithFrame:CGRectMake(0, 0, 1024, 40)];
[self.view addSubview:barView];
这样,在BarView.m中,我有一个按钮,当点击它时,将在父ViewController中调用Method1
。
- (IBAction)buttonPressedMethod1 {
[(id)self.superview Method1]; // This line is definitely wrong.
}
我知道我错过了什么。 任何人都可以帮忙解释一下吗?
感谢。
答案 0 :(得分:0)
好吧,您的第一个代码段错误,因为您正在通过从笔尖加载已经初始化的对象发送initWithFrame
。当然,笔尖中的视图已经有了正确的框架,所以这条线是不必要的?
至于实际问题,你是在viewcontroller的视图而不是viewcontroller本身上调用方法。您应该将视图中的按钮连接到视图控制器中的操作(因为您正在使用所有者自己加载笔尖,您可以在IB中执行此操作)。