【发布时间】:2014-08-30 20:43:56
【问题描述】:
在我的 iOS 应用程序中,我的 AddPersonViewController 类中有“Person”类的前向声明,如下所示。
@protocol PersonAddDelegate;
@class Person;
@interface AddPersonViewController : UIViewController
@property (nonatomic, unsafe_unretained) id <PersonAddDelegate> delegate;
@property (nonatomic, strong) Person * person;
@end
@protocol PersonAddDelegate <NSObject>
- (void)AddPersonViewController:(AddPersonViewController *)addPersonViewController didAddPerson:(Person *)person;
@end
但是当我尝试从代码中调用 person 对象时,我注意到 person 是 nil 即使 self.nameTextField.text 按预期返回字符串:
self.person.personname = self.nameTextField.text;
我猜这是关于初始化“人”,但我不确定。关于问题和解决方案的任何想法?提前谢谢你
【问题讨论】:
-
这与前向声明有什么关系?似乎问题在于您创建了一个
Person对象并将其分配给person属性。
标签: objective-c forward-declaration