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

相关推荐
karshey28 分钟前
【IOS webview】IOS13不支持svelte 样式嵌套
ios
潜龙952734 分钟前
第4.3节 iOS App生成追溯关系
macos·ios·cocoa
游戏开发爱好者810 小时前
iOS App 电池消耗管理与优化 提升用户体验的完整指南
android·ios·小程序·https·uni-app·iphone·webview
谢尔登13 小时前
【React Native】布局和 Stack 、Slot
javascript·react native·react.js
Misha韩13 小时前
React Native 基础tabBar和自定义tabBar - bottom-tabs
android·react native
神策技术社区16 小时前
iOS 全埋点点击事件采集白皮书
大数据·ios·app
wuyoula17 小时前
iOS V2签名网站系统源码/IPA在线签名/全开源版本/亲测
ios
2501_9159184117 小时前
iOS 性能监控工具全解析 选择合适的调试方案提升 App 性能
android·ios·小程序·https·uni-app·iphone·webview
fishycx18 小时前
iOS 构建配置与 AdHoc 打包说明
ios
90后的晨仔19 小时前
ios 集成阿里云的AI智能体报错CocoaPods could not find compatible versions for pod "AUIAICal
ios