我正在开发一个应用程序,我希望将一个类的对象从一个UIViewController传递给另一个,我该怎么做?
答案 0 :(得分:7)
初始化新的View Controller时,按如下方式定义变量:
MyClass *myClass = [[MyClass alloc] init];
myClass.username = @"Rahul Kushwaha";
// assume a property called username is defined in MyClass of a NSString type.
NextViewController *controller = [NextViewController alloc];
controller.myClassObject = myClass ;
[self.navigationController pushViewController:controller animated:YES];
不要忘记你必须在NextViewController中定义一个类型(MyClass)的对象。
<强>示例强>
NextViewController。的ħ强> 的
#import "MyClass.h"
@interface NextViewController
{
MyClass *myClassObject;
}
@property (nonatomic,retain) MyClass *myClassObject;
NextViewController。的米强> 的
@synthesize myClassObject;
答案 1 :(得分:0)
假设您有firstViewController
和secondViewController
。
比如说,您想要从第一个视图传递NSString *testString;
。
在这种情况下,您应该在secondViewController.h文件中使用@property
声明此NSString,并在secondViewController.m文件中使用@synthesize
声明此NSString。
在firstViewController中,当您创建secondViewController的实例时(通过secondViewController *secondView = [[secondViewController alloc] initWith...];
,请使用以下行:secondView.stringYouCreatedUsingSynthesize = testString;