【发布时间】:2021-02-12 03:55:31
【问题描述】:
@interface MyModel :NSObject
@property (strong, nonatomic) NSString *name;
@property (strong, nonatomic) NSMutableArray <MyModel> *items;
@property (strong, nonatomic) NSString *id;
@end
@interface SomeVC ()
@property (strong, nonatomic) NSObject *object;
@property (strong, nonatomic) NSMutableArray <MyModel> *items;
_items = (NSMutableArray <MyModel> *)self.object;
_items.items // !! COMPILE ERROR
我在(NSMutableArray <MyModel> *)的对象类型上找不到错误属性
我写了一个很长的课程,所以我写了一些代码。
我正在尝试访问其中包含许多 MyModel 对象的 items 对象。在这个 MyModel 对象内部还有一个嵌套的秒项对象 MyModel 类型。
我习惯用 Swift 编写。使用类型转换一切都很容易。在 Objective-C 中进行类型转换的好方法是什么。给 items 和 items.items 的引用对象如何有意义?
【问题讨论】:
-
Noooo - 在 Objective-C 中,您不必对所有内容都进行类型转换,这真是一种解脱,尽管这当然是一个品味问题。无论如何,您不能像那样使用 MyModel,您必须使用指向它的指针。您还需要导入正确的标题来解决您的问题。我将发布一些代码来说明...
-
请先生期待您的回答:) 我认为项目中已经实现了头文件。
-
我发布了如何执行 NSMutableArray 但不清楚您要对项目做什么?你设置 self.items = self.object 真的很可疑?到底是怎么回事?编译错误是因为可变数组上没有
items。 -
我正在尝试您对项目的建议,给我一些时间:)
-
您可以在另一个数组中包含一个数组,但我认为您没有正确使用该对象,或者我可能不理解。由于这不是一个交互式站点,因此很难提供帮助。我想尝试更多,也许使用
[self.items addObject:xxx];将对象添加到数组中,一旦你取得一些进展,再次询问你是否卡住了。
标签: arrays objective-c generics type-conversion