小编Cha*_*ara的帖子

使用initWithNibName传递的参数:

在iphone应用程序中,我需要将一些值传递给新的viewcontroller对象,同时它是从另一个viewcontroller类中的方法创建的,所以我可以在(id)initWithNibName:new viewcontroller的方法中初始化那些值,然后我可以在viewdidLoad方法中加载这些值.

我想知道的是我如何将值(参数)传递给新的viewcontrollor的构造函数(initWithNibName)对象像java中的构造函数重载给我一些代码示例,只显示initWithNibName如何使用额外参数调用以及如何在新创建的对象谢谢......


回答


这是我在ViewControllor.h中解决问题"观察是一个具有属性的对象"的方法

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil set:(Observation *)observation;
Run Code Online (Sandbox Code Playgroud)

在我放的ViewControllor.m文件中

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil set:(Observation *)observation{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
    // Custom initialization on passed parameter observation object         
    draftObservation = observation;
}
return self;
Run Code Online (Sandbox Code Playgroud)

}

然后我在另一个班级这样称呼它

 ObsevationListView *obsevationListView = [[ObservationViewControllor alloc]  
                                          initWithNibName:@"ObservationViewControllor" 
                                          bundle:nil set:observer];
[self.navigationController pushViewController:obsevationListView animated:YES];
Run Code Online (Sandbox Code Playgroud)

它工作正常.如果有人得到这方面的帮助,我很高兴

iphone parameter-passing

6
推荐指数
1
解决办法
3991
查看次数

标签 统计

iphone ×1

parameter-passing ×1