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。重新运行项目。

相关推荐
摘星编程13 小时前
OpenHarmony + RN:Stack堆栈导航转场
react native·react.js·harmonyos
摘星编程13 小时前
OpenHarmony环境下React Native:Tooltip自动定位
javascript·react native·react.js
pop_xiaoli15 小时前
OC-实现下载单例类
ios·objective-c·cocoa·xcode
2501_9219308316 小时前
React Native 鸿蒙跨平台开发:LinearGradient 径向渐变
react native·react.js·harmonyos
2601_9495936516 小时前
React Native 鸿蒙跨平台开发:LinearGradient 实战案例集
react native·react.js·harmonyos
2501_9209317016 小时前
React Native鸿蒙跨平台跨平台阅读应用实现方案,包含书籍展示、分类筛选、搜索排序等功能模块,通过清晰的状态管理实现数据筛选与排序
react native·react.js·ecmascript·harmonyos
zhyongrui16 小时前
SnipTrip 菜单 Liquid Glass 实现方案:结构、材质、交互与深浅色策略
ios·性能优化·swiftui·交互·开源软件·材质
zhyongrui17 小时前
SnipTrip 不发烫的实现路径:局部刷新 + 合成缓存 + 峰值削减
ios·swiftui
xiaoqi92217 小时前
React Native鸿蒙跨平台实现图片画廊类页面是视觉展示型APP(如摄影类、图库类、设计类APP)的核心载体,其核心需求是实现图片的流畅渲染
javascript·react native·react.js·ecmascript·harmonyos
2601_9495936518 小时前
React Native 鸿蒙跨平台开发:LinearGradient 渐变动画效果
javascript·react native·react.js