我使用
添加了一个viewcontroller[self presentModalViewController:vectorView animated:YES];
但是从内部想要在父视图控制器内调用一个方法。
我读了this个问题,发现可以这样做,在父母中设置一个变量:
self.parentViewController.myString = aString;
但有没有办法调用方法并通过这种方式发送一些变量?
例如
self.parentViewController.myMethod; //Which does not work
答案 0 :(得分:3)
与您发送的任何其他消息没有什么不同:
[self.parentViewController myMethod:param1 withParam:param2];
请注意,iOS 5中parentViewController
属性的行为已更改:
在iOS 5.0之前,如果视图没有父视图控制器并且以模态方式呈现,则将返回呈现它的视图控制器。这已不再是这种情况。您可以使用presentViewController属性获取呈现视图控制器。
答案 1 :(得分:3)
要添加Ole Begemann回答,您可以将视图控制器转换为静音警告
if ([self.parentViewController isKindOfClass:[YourParentViewController class]])
[(YourParentViewController*)self.parentViewController yourMethod];