ReactNative自定义原生模块 ios

第一步

File->New->Project->Cocoa Touch Static Library

本次采用object-c语言

第二步

实现了“RCTBridgeModule”协议

//

//  RCTStatusbarProps.h

//  RCTStatusbarProps

//

//  Created by bhsj_imac on 2018/7/2.

//  Copyright © 2018年 Facebook. All rights reserved.

//


#import <Foundation/Foundation.h>

#import <React/RCTBridgeModule.h>

@interface RCTStatusbarProps : NSObject <RCTBridgeModule>


@end

第三步

//

//  RCTStatusbarProps.m

//  RCTStatusbarProps

//

//  Created by bhsj_imac on 2018/7/2.

//  Copyright © 2018年 Facebook. All rights reserved.

//


#import "RCTStatusbarProps.h"

#import <UIKit/UIKit.h>

@implementation RCTStatusbarProps

RCT_EXPORT_MODULE();<----指定在Javascript中访问这个模块的名字

RCT_EXPORT_METHOD(getHeight:(RCTResponseSenderBlock)callback) {

    声明要给Javascript导出的方法

    CGRect rectOfStatusbar = [[UIApplication sharedApplication] statusBarFrame];

    callback([NSArray arrayWithObject:[NSNumber numberWithDouble:rectOfStatusbar.size.height]]);

    

}

@end


猜你喜欢

转载自blog.csdn.net/gaokaikai1996/article/details/80900441