React Native 與 iOS交互通信

  • 學(xué)習(xí)React native 與 iOS混編的demo,參照百度糯米開發(fā)APP開發(fā)。

1、參考官網(wǎng)

2、React native 與 Swift 互調(diào)

1、實(shí)現(xiàn)效果:點(diǎn)擊React native的ListView的一行,然后 調(diào)用Swfit代碼的 
addEvent方法(callback:回調(diào)js代碼執(zhí)行alert('d'), 然后執(zhí)行Swift代碼進(jìn)行控制器跳轉(zhuǎn))
效果圖:iOS調(diào)用回調(diào)React native彈框 ‘test’,然后 React 調(diào) Swift點(diǎn)擊進(jìn)行跳轉(zhuǎn).gif
  • 混編頭文件配置,導(dǎo)入需要的頭文件


    1.png
2.png
typedef void (^RCTResponseSenderBlock)(NSArray *response);
3.png
  • js 調(diào)用iOS代碼;iOS回調(diào)處理


    4.png
5.png

2、解析:

  • 圖中:1. ReactNative 調(diào)用iOS代碼
    • ManagerBridger.addEvent(......)
   var ManagerBridger = require('react-native').NativeModules.ManagerBridger;
   ManagerBridger.addEvent(titleName, ()=>{
     alert('d');
   });
  • 圖中:2. iOS 回調(diào) React native 代碼-> 借助RCTResponseSenderBlock 進(jìn)行回調(diào)處理
ManagerBridger.addEvent(titleName, ()=>{
     alert('d');
});
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容