1

我想允许推送来设置parentViewController的实例变量。例如,VC1(父项)有一堆文本域,哪些不是从VC2(子项)填充的。 VC2被VC1压入堆栈。我尝试做像parentViewController.myString = "foo";但是因为parentViewController是一个UIViewController,我不能编辑myString字段。访问parentViewController的变量

基本上,我的问题是“我如何访问父项的实例变量?”

编辑:我试过这里的解决方案:Setting property value of parent viewcontroller class from child viewcontroller?但它充满了语法错误。

回答

4

让父视图控制器子类UIViewController(例如ParentViewController)实现您希望操作的实例变量的所有属性,并将变量设置为((ParentViewController *)parentViewController).myString = @"foo";

E.g.

@interface ParentViewController : UIViewController { 
    NSString *myString; 
} 
@property (nonatomic, retain) NSString *myString; 
@end 

@implementation ParentViewController 

@synthesize myString; 

@end 
+0

谢谢你,这个完美!我试着投了,我忘记了2(在开始的声明。 – skylerl 2010-02-13 01:44:22

+0

请迅速 – 2016-10-20 11:14:29