0

我有两个 NSObject。

@interface Car : NSObject{
     @property (strong) NSSet *cars;
}

@interface Model : NSObject{
     @property (strong) UIImage *picture;
     @property (strong) NSString *name;
}

基本上,对象 Car 有一个 NSSet cars,并且 NSSet cars 的每个对象都有属性图片和名称。

如何将这两个 NSObject 关联起来,以及如何使用 Model NSObject 的属性将字符串或图像保存到 Car NSSet。谢谢。

4

1 回答 1

0

为了方便添加或删除,您的 " cars" 属性应声明为NSMutableSet

并假设您的单个 Car 对象被命名为“ listOfCars”,这是一种方法来做(我认为)您正在尝试做的事情:

Model * newModel = [[Model alloc] init];
if(newModel)
{
    newModel.picture = [UIImage imageNamed: @"Edsel.jpg"];
    newModel.name = @"Ugly Car";

    [listOfCars.cars addObject: newModel];
}

并且,在您的 Car .m 文件中,执行以下操作:

- (id) init
{
    self = [super init];
    if(self)
    {
        _cars = [[NSMutableSet alloc] init];
    }
    return(self);
}

init 方法是您应该为您的 " " 属性引用基础变量的唯一地方。如果您指的是从 Car 对象中设置的汽车,则cars在其他任何地方都应该是“ listOfCars.cars”或“ ”。self.cars

于 2013-06-21T21:57:17.307 回答