我试图让反对框架与swift(xcode 6.4)一起工作。
除了register/inject对象所需的宏之外,一切都工作得很好,例如objection_register
我按照“Bridging Cocoalumerjack with Swift”中的方法让宏使用swift,但是xcode总是抱怨:Use of undeclared identifier 'initialize'
在objectionRegister
中实现ObjectionSwift.m
函数时。因为我不熟悉objective-c,所以在查看初始化器方法并试图找出错误之处时,我陷入了困境。
谢谢你的帮助!
目标Wift.h
#import <Foundation/Foundation.h>
@interface ObjectionSwift : NSObject
+ (void) objectionRegister(NSString *) name;
#endif
目标Wift.m
#import "ObjectionSwift.h"
#import "Objection.h"
@implementation ObjectionSwift
+ (void) objectionRegister:(NSString *) name {
objection_register_singleton(name)
}
@end
更新
我转为台风作为DI框架,提供快速支持和工作相当好。
最佳答案
可以使用类变量:
class ListingsViewController: UIViewController
{
class var initialize: Bool
{
JSObjection.registerClass(ListingsViewController.self, scope: JSObjectionScopeNormal)
return true
}
}
关于dependency-injection - Swift的异议框架宏,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25127019/