Gree
Gree
  • 发布:2015-11-08 01:04
  • 更新:2019-10-21 10:15
  • 阅读:2198

IOS使用Native.js,实现代理,调用时报错

分类:Native.js

.h 文件

//定义协议
@protocol NjsAppMainEvent <NSObject>
@required
-(void) onEventInvoked:(NSString*)name;

@end
@interface NJSAppMain : NSObject{
NSString *_name;
id<NjsAppMainEvent > _delegate;
}

@property (nonatomic,retain) NSString *name;
@property (nonatomic,retain) id delegate;

-(void)setEventObserver:(id<NjsAppMainEvent >)delegate;
-(void)test;
@end

.m文件

import "NJSAppMain.h"

@implementation NJSAppMain

@synthesize name=_name,delegate=_delegate;

-(void)setEventObserver:(id<NjsAppMainEvent >)newDelegate{
NSLog(@"setEventObserver:%@",newDelegate);
_delegate = newDelegate;
}
-(void)test{
NSLog(@"setEventObserver:%@",[self delegate]);
[[self delegate] onEventInvoked:@"test"];
}

@end

.js文件
var appMainIOS = plus.ios.implements("NJSAppMain");
var appMainIOSDelete = plus.ios.implements("NjsAppMainEvent",{
"onEventInvoked":function(name){
alert("onEventInvoked:"+name);
}
});
appMainIOS.setEventObserver( appMainIOSDelete );
appMainIOS.test();

调用test方法的报错,是什么原因呢?

2015-11-08 01:04 负责人:无 分享
已邀请:
f***@126.com

f***@126.com

是的,oc方法里传参数就错 不传参就可以。? 有哪位能解释下

f***@126.com

f***@126.com

已解决

  • q***@163.com

    能不能说下解决的方法

    2017-05-04 23:54

hyfkobe

hyfkobe

请问怎么解决的,急求啊

1***@qq.com

1***@qq.com

怎么解决的啊,急急急

该问题目前已经被锁定, 无法添加新回复