在 Swift 中导入自定义模块
时间: 2025-06-06 19:56:52
(部分内容来自网络,其真实性存疑,为了避免对您造成误导,请谨慎甄别。)
在 Swift 中导入自定义模块(如 Framework 或 Swift Package)需遵循以下步骤:
1. 创建自定义模块
方式一:创建 Framework
swift
Copy Code
// MyFramework.swift
import Foundation
public class MyClass { // 必须标记为 public
public init() {}
public func greet() -> String {
return "Hello from MyClass!"
}
}
关键点:确保类、方法或属性标记为 public 或 open 以允许外部访问。
方式二:创建 Swift Package
使用 swift package init --type library 生成包结构。
2. 导入自定义模块
在目标项目中导入
swift
Copy Code
// 主项目文件
import MyFramework // 导入自定义模块
let instance = MyClass()
print(instance.greet()) // 输出 "Hello from MyClass!"
依赖配置:
Framework:通过 Xcode 的 General → Frameworks and Libraries 添加。
Swift Package:通过 File → Add Packages 添加仓库路径。
3. 解决常见问题
问题 解决方案
模块未找到 (No such module) 检查模块是否已链接到目标(Build Phases → Link Binary)
命名冲突 使用模块名前缀限定(如 MyFramework.MyClass)
平台不支持 确保模块的 Deployment Target 与主项目一致
4. 高级用法
全局导入:在任意文件中使用 @_exported import MyFramework,后续文件无需重复导入。
资源捆绑:若模块包含资源(如图片),需通过 Bundle.module 访问。
示例项目结构
text
Copy Code
MyApp/
├── MyApp.xcodeproj
└── Frameworks/
└── MyFramework.framework # 自定义模块