import <Foundation/Foundation.h>
// 定义协议
@protocol NjsHelloEvent <NSObject>
@required
-(void) onEventInvoked:(NSString*)name;
@end
// -------------------------------------------------------------
// 定义类NjsHello
@interface NjsHello : NSObject {
NSString _name;
id<NjsHelloEvent > _delegate;
}
@property (nonatomic,strong) NSString name;
@property (nonatomic,strong) id delegate;
-(void)updateName:(NSString*)newname;
-(void)setEventObserver:(id<NjsHelloEvent >)delegate;
-(void)test;
+(void)testCount;
@end
import "NjsHello.h"
// 实现类NjsHello
@implementation NjsHello
@synthesize name=_name;
-(void)updateName:(NSString*)newname{
_name = [newname copy];
NSLog(@"%@",_name);
}
-(void)setEventObserver:(id<NjsHelloEvent >)delegate{
_delegate = delegate;
}
-(void)test{
NSLog(@"My name is: %@",_name);
[[self delegate]onEventInvoked:_name];
}
+(void)testCount{
NSLog( @"Static test count" );
}
@end
这个是 自定义的对象 NjsHello 这基本都是 复制粘贴原生里面的代码!
在JS 里面有一个按钮 点击触发 orderBack
function orderBack() {
//plus.order.BackFunction( function( result ) {},function(result){});
switch ( plus.os.name ) {
case "Android":
// Android平台: plus.android.
plus.android.runtimeMainActivity().finish();
break;
case "iOS":
// iOS平台: plus.ios.
// plus.ios.runtimeMainActivity().finish();
testOC();
break;
default:
// 其它平台
break;
}
}
function testOC()
{
alert(1);
// 导入测试类NjsHello
var NjsHello = plus.ios.importClass("NjsHello");
alert(NjsHello);
// 创建对象的实例
var hello = new NjsHello();
alert(hello);
alert(22);
}
alert(1) 是能够弹出来,
而 alert(NjsHello); 弹出来显示是 null
求大神解决!!
ios_xi (作者)
NjsHello 不就是 在xcdoe 里面 定义了一个对象么? 放在项目根目录底下的
2015-06-17 15:56
ios_xi (作者)
请问下是不是 还需要导入那个 .a 文件才行???
2015-06-17 16:12
DCloud_IOS_XTY
哪个.a 你的代码要包含在执行文件中才可以的
2015-06-17 16:16
ios_xi (作者)
回复 DCloud_IOS_XTY:有具体要哪个.a 文件么? 插件式的开发 我是可以的
2015-06-17 17:18