SComponents
本地 SwiftUI 组件
🐥 功能
- [
🐥 []> 弹出菜单 - []> 提醒框
- []> 模态框
💊 如何使用
弹出菜单
您可以使用 SwiftUI 视图扩展方法来指定弹出菜单的内容。
import SComponents
Text("My App content")
.popover(isShowing: .constant(true)) {
Text("popover content")
}
上面的例子展示了如何从 SwiftUI view
中呈现一个弹出菜单,该菜单作为弹出菜单的锚点矩形并浮在主窗口上方。弹出菜单使用该项的中心位置来确定放置位置和箭头的方向。使用弹出菜单显示用户完成时出现的应用内容,以及当用户完成时消失的内容。将通过在 isShowing
下的 SwiftUI flag 作为绑定来显示/隐藏弹出菜单。例如,您可以使用弹出菜单显示有关当前选中项的信息,显示工具和配置选项,或者从用户那里获取信息。
🔧 安装
您有四种方式可以使用 SComponents 在项目中:
- 使用 CocoaPods
- 使用 Carthage
- 使用 Swift Package Manager
- 手动安装(构建框架或嵌入 Xcode 项目)
使用 CocoaPods 安装
CocoaPods 是用于 Objective-C 的依赖项管理器,它自动化并简化了在项目中使用第三方库的过程。有关详细信息,请参阅入门部分。
Podfile
platform :ios, '13.0'
pod 'SComponents'
Swift and static framework
Swift项目之前必须使用use_frameworks!
将所有Pods转换为动态框架,以便CocoaPods工作。
然而,从CocoaPods 1.5.0+
版本开始(与Xcode 9+
一起发布),它支持将Objective-C和Swift代码构建为静态框架。您可以使用模块头,将SComponents作为静态框架使用,无需使用use_frameworks!
platform :ios, '13.0'
# Uncomment the next line when you want all Pods as static framework
# use_modular_headers!
pod 'SComponents', :modular_headers => true
更多详情请参阅CocoaPods 1.5.0 — Swift静态库
否则,您仍然需要添加use_frameworks!
以将SComponents作为动态框架使用
platform :ios, '13.0'
use_frameworks!
pod 'SComponents'
使用Carthage安装
Carthage是一个轻量级的Swift和Objective-C依赖管理器。它利用CocoaTouch模块,比CocoaPods更不侵入。
要使用Carthage进行安装,请按照Carthage上的说明操作。
Carthage用户可以指向此仓库并使用生成的框架
在您的Cartfile中添加以下条目:github "SComponents/SComponents"
然后执行carthage update
。如果您是第一次在该项目中使用Carthage,您需要按照Carthage中的说明进行一些额外的步骤。
使用Swift Package Manager安装
Swift Package Manager (SwiftPM)是一种工具,用于管理Swift代码的分发以及C家族依赖。
点击文件
-> Swift Packages
-> 添加包依赖
,输入SComponents仓库的URL。或者,您可以使用GitHub账号登录Xcode,然后直接输入SComponents
进行搜索。
在选择了包之后,您可以选择依赖类型(标记版本、分支或提交)。然后,Xcode 将为您设置所有所需内容。
如果您是框架作者并使用 SComponents 作为依赖项,请更新您的 Package.swift
文件
let package = Package(
dependencies: [
.package(url: "https://github.com/shial4/SComponents.git", from: "0.0.1")
],
//...
)
⭐ 贡献
欢迎对这项工程做出贡献! :)
❓ 问题
只需在 GitHub 上创建一个问题。
📝 许可协议
本项目发布遵循 MIT 许可协议。