React Native中iOS工程从OC更换为swift

OC文件主要有两种

  • .h 表示头文件,用来声明各种成员变量,方法,属性之类的。
  • .m 主要用来实现.h 里声明的方法。

在我们的项目中创建一个AppDelegate.swift文件

这时候会弹出一个 "create bridging header"的确认页面,Swift和OC混编是需要添加oc和swift桥接文件的,这里点击Create bridging header就好。

一些转换

swift 复制代码
#import <UIKit/UIKit.h>
转换为
import UIKit
UIApplicationMain 注释在 Swift 中用于标记一个类作为应用程序的代理。这是替代 Objective-C 中 main 函数的方式。

在 Swift 中,方法签名的语法和 Objective-C 不同。例如,application:didFinishLaunchingWithOptions: 在 Swift 中被转换为 application(_:didFinishLaunchingWithOptions:)。

Swift 中的字典字面量语法和 Objective-C 不同。例如,@{} 在 Swift 中被转换为 [:]。

AppDelegate.m文件中

这里引入的React Native相关的包,由于是OC文件,所以要把这些内容添加到bridging header桥接文件中。

swift 复制代码
#import <React/RCTBundleURLProvider.h>
#import <React/RCTRootView.h>

转换完成后,删除AppDelegate.hAppDelegate.mmmain.m, 然后清除项目,按下cmd+R。重新运行项目。

相关推荐
Digitally3 分钟前
如何通过蓝牙将 iPhone 上的照片传输到 Android
android·ios·iphone
文件夹__iOS4 分钟前
iOS 网络安全认证:Token / MD5 / RSA 简明指南
安全·web安全·ios
TMT星球13 分钟前
开启iPad专业办公时代 WPS for Pad原生桌面级Office正式上线
ios·ipad·wps
Nefertari_YinC20 分钟前
mac搭建基于wda\airtest 的iOS自动化测试环境
软件测试·macos·ios·airtest·ui自动化测试
前端不太难24 分钟前
Flutter / iOS 迁移鸿蒙 ArkUI 的真实成本
flutter·ios·harmonyos
pop_xiaoli32 分钟前
iOS—UITableView性能优化
ios·性能优化·objective-c·cocoa·xcode
老师好,我是刘同学44 分钟前
贪心算法与优先队列实战解析
算法·ios·贪心算法
2501_915918411 小时前
iOS App HTTPS 抓包工具,代理抓包和数据线直连 iPhone 抓包的流程
android·ios·小程序·https·uni-app·iphone·webview
少云清1 小时前
【UI自动化测试】2_IOS自动化测试 _使用模拟器
ui·ios
2501_915909061 小时前
iOS 开发编译与真机调试流程的新思路,用快蝎 IDE 构建应用
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程