如何在子视图中调用IBAction?

iWi*_*ard -1 iphone objective-c ibaction

当我尝试在根视图中调用IBAction时它可以正常工作,但是当我在subView应用程序中调用时.

码:

- (IBAction)webButton:(id)sender {

  NSLog(@"doesn't print log");

}
Run Code Online (Sandbox Code Playgroud)

这是ss off crash:http://dl.dropbox.com/u/77033905/urlInSafariCrashesUp.png

感谢帮助

更新:示例代码:http://dl.dropbox.com/u/77033905/IBActionSubView.zip

Phi*_*lls 6

创建SubViewController时,sub指向它的变量是addSubViewButton:方法的本地变量,并在该方法结束时释放.您需要保留对该控制器的强引用,以便在使用它之前不会取消分配.

  • 在ViewController.h中,创建一个属性:`@property(strong,nonatomic)SubViewController*sub;`.然后,不是使用名为`sub`的局部变量,而是将对象分配给属性.(如果要在真实的程序中使用它,那么如果有人点击两次"添加子视图",你也会遇到怎样的问题.) (3认同)