老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業提供網站建設、域名注冊、服務器等服務

React-Native中橋接iOS原生開發的示例分析

這篇文章將為大家詳細講解有關React-Native中橋接iOS原生開發的示例分析,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

網站建設哪家好,找創新互聯公司!專注于網頁設計、網站建設、微信開發、微信平臺小程序開發、集團企業網站建設等服務項目。為回饋新老客戶創新互聯還提供了張家港免費建站歡迎大家使用!

react-native的文檔的原生模塊中可以看到清洗的代碼

React-Native中橋接iOS原生開發的示例分析

接下來先說一下筆者的要實現的功能:

在iOS原生代碼中集成高德導航,在RN中用JS去調用原聲代碼,并進行跳轉,

接下來是筆者遇到的問題與不好理解的地方,寫出來跟大家分享讓大家少走彎路.

剛開始也是一頭霧水且查資料也是到處都是但是都沒有解決問題.

iOS原生寫法

在iOS中創建類繼承NSObject(OC語言).

//類的.h文件
#import 
#import 
#import 
#import 

@interface GaoMapManager : NSObject

@end
// 類的.m文件
#import "GaoMapManager.h"
#import 
#import 
#import "GPSNaviViewController.h"
@implementation GaoMapManager

@synthesize bridge = _bridge;
RCT_EXPORT_MODULE();
RCT_EXPORT_METHOD
(
 pushViewControllerXYZ:(nonnull NSNumber *)reactTag
 )
{
 RCTUIManager *uiManager = _bridge.uiManager;
 GPSNaviViewController *gps = [[GPSNaviViewController alloc] init];
 dispatch_async(uiManager.methodQueue, ^{
  [uiManager addUIBlock:^(RCTUIManager *uiManager, NSDictionary *viewRegistry) {
   UIView * view = viewRegistry[reactTag];
   UIViewController *vc = (UIViewController *)view.reactViewController;
   [vc presentViewController:gps animated:YES completion:^{
    
   }];
  }];
 });
}

以上是全部iOS端的類文件的代碼.當然繼承高德地圖是需要在AppDelegate.m文件中注冊高德apiKey(如果地圖不顯示,Xcode中會顯示錯誤,apikey不生效需要10分鐘之后生效且一個key對應一個app,否者會出錯)

RN中寫法

看到這大家如果認真看了上面的代碼,會注意到reactTag這個參數,在JS中怎么傳這個參數呢,又代表著什么意思
其實很簡單

import { NativeModules } from 'react-native';

export default NativeModules.GaoMapManager;

這是筆者寫的一個untils的CommoniOSUtils.JS文件.調用的時候直接用文件名調用iOS原生的方法名即可

// findNodeHandle(this.homeHead)就是對應的reactTag參數的值
 CommoniOSUtils.pushViewControllerXYZ(findNodeHandle(this.homeHead));

findNodeHandle引入方式

import {
 findNodeHandle,
} from 'react-native';

看到這里大家應該清楚怎么回事了.我還要啰嗦一句具體是怎么個情況(個人理解)

在RN中用findNodeHandle方法去獲取ref控件的tag值,將這個值傳入到iOS原生中,再用

利用這個tag獲取當當前的view,根據view獲取當前VC,用VC去跳轉頁面且傳值使用.完成調用

高德導航的一些坑

1,用pod引入的是5.3.0版本,demo中確實5.5.0版本,方法少了很多,自己修改一下問題不大
2, iOS9以下會有內存泄漏問題,導致崩潰

關于“React-Native中橋接iOS原生開發的示例分析”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。


分享名稱:React-Native中橋接iOS原生開發的示例分析
網站地址:http://www.xueling.net.cn/article/jedjch.html

其他資訊

在線咨詢
服務熱線
服務熱線:028-86922220
TOP
主站蜘蛛池模板: 天美av一区二区三区久久 | 风间由美一区二区三区在线观看 | 久久久久久国产精品免费免费男同 | 日本天堂网 | 亚洲aⅴ影视 | 国产精品一区人妻精品阁在线 | 91麻豆精品国产91久久久更新资源速度超快 | 国产女人喷潮视频在线观看 | 国产色小视频 | 亚洲精品乱码久久久久久9色 | 亚洲区在线 | 最新中文字幕AV无码不卡 | 日本黄色片一区 | 日本一区二区三区视频在线观看 | 日韩人妻无码系列专区 | 亚洲高清国产AV拍精品青青草原 | 狠狠色综合久久丁香婷婷 | 亚洲色无码一区二区三区 | youjizz丰满熟妇中国 | 欧美九区 | 中文字幕无码久久精品 | 国产无遮挡又黄又爽高潮 | 日韩欧美a级v片免费播放 | 波多野结衣AV手机在线观看 | 久久婷婷人人澡人人爽人人喊 | 亚洲欧美人成视频一区在线 | 国产精品香蕉在线观看首页 | 欧美激情第五页 | 视频在线观看一区 | 亚洲精品自在在线观看 | 男女好痛好深好爽视频一区 | 高清国产一区二区三区在线 | www.免费视频网站 | 日韩久久中文字幕 | 好爽又高潮了毛片一区二区 | 另类免费视频 | 久久嫩草精品久久久精品才艺表演 | 99视频国产热精品 | 日韩综合久久 | 五十六十日本老熟妇乱 | 少妇人妻无码永久免费视频 |