0

我是目标 C 的新手,并试图实现反对(依赖注入器)。

但它在下面不起作用的是我正在使用的代码

My Protocol File 
#import <Foundation/Foundation.h>

@protocol InfoquestProtocolTest <NSObject>
-(void):nothing;
@end

My .h file is below
#import <Foundation/Foundation.h>
# import "InfoquestProtocolTest.h"


@interface InfoquestImplementation : NSObject<InfoquestProtocolTest>



@end

my .m file implementing protocol 


#import "InfoquestImplementation.h"

@implementation InfoquestImplementation
-(void):nothing{}
@end 

Code for module file of objection

#import "InfoquestTestConf.h"
#import <Objection/Objection.h>
#import "InfoquestViewController.h"
#import "InfoquestImplementation.h"
@implementation InfoquestTestConf
-(void)configure
{

    [self bindClass:[InfoquestImplementation class]   toProtocol:@protocol(InfoquestProtocolTest)];
}
@end

Code for getting object from objection

    JSObjectionInjector *injector = [JSObjection createInjector];
    [JSObjection setDefaultInjector:injector];
    InfoquestTestConf *Module = [[InfoquestTestConf alloc] init];
    [injector withModule: Module];
    id<InfoquestProtocolTest> testing2 = [injector getObject:[@protocol(InfoquestProtocolTest)];

但是当我尝试使用 [testing2 nothing] 调用时;我收到错误并且自动完成没有显示任何内容。

谢谢高拉夫

4

3 回答 3

3

你有一个语法错误:

你应该更换:

-(void):nothing;

-(void)nothing;
于 2013-10-14T09:52:04.137 回答
1

here is an error in your syntax.please change :

    -(void):nothing;

to:

    -(void)nothing;
于 2013-10-14T09:53:53.670 回答
0

因此,您正在使用自定义委托。因此,首先您必须将委托设置为您正在实现协议方法的类。

于 2013-10-14T09:50:28.500 回答