我是 STack Overflow 的新手,也是 Objective C 的新手。我做了很多研究,已经找到了一些答案,例如:访问cocoa中父类的对象 https://stackoverflow.com/questions/18706592/accessing-objects-of-parent-class-in-cocoa
尽管如此,我在理解它时仍然存在一些问题,我希望社区可以帮助理解:
我有一个 ViewController,在这个控制器内我创建了一个自定义 NSObject 类的实例。我想从对象实例访问 ViewController 的(父级)属性和方法。
MYCustomViewController.h
@interface MYCustomViewController : NSViewController
// Vars
@property BOOL testBool;
@end
MYCustomViewController.m
@implementation MYCustomViewController
- (void) someMethod
{
self.testBool = true;
_importController = [[MYCustomObject alloc] init];
[_importController test];
}
@end
MYCustomObject.h
@interface MYCustomObject : NSObject
- (void)test;
@end
我的自定义对象.m
@implementation MYCustomObject
- (void)test
{
// HOW CAN I ACHIEVE THIS?
myParent.testBool; // --> true
// AND THIS?
[myParent someMethod];
}
@end
我仍在学习,所以任何(不太短的)解释都会很棒。
想法是:在对象实例化时发送“self”,但是如何发送?
针对 OSX 10.10、Xcode 8、OSX 10.12
编辑:使用 MYCustomObject 上的协议使其正常工作。上述想法还有其他的可能性吗?