SSToastMessage
SSToastMessage 用 SwiftUI 编写。它将在任何视图顶部添加 toast、alert 和浮动消息视图。它旨在简单、轻量级且易于使用。它将是一个仅用一行代码弹出的窗口。
屏幕截图
设置说明
CocoaPods
要使用 CocoaPods 将 Toast-Swift 集成到您的 Xcode 项目中,请在您的 Podfile
中指定它
pod 'SSToastMessage', '~> 1.0.0'
并在您的代码中添加 import SSToastMessage
。
Swift Package Manager
当使用Xcode 11或更高版本时,您可以通过转到项目设置 > Swift Packages
并提供GitHub URL来添加存储库来安装 SSToastMessage
。或者,您也可以去 文件
> Swift Packages
> 添加依赖项...
手动
- 将
MessageView.swift
、DispatchWorkHolder.swift
和View+Extension.swift
添加到您的项目中。 - 为自己拿一杯冷水
🍺 .
要求
- iOS 13+
- Xcode 11+
用法
- 将所有的主要代码放入一个 ZStack、VStack 或 HStack 中。
- 添加一个 binding bool 控制弹出呈现状态
- 将
.present
修改器添加到您的堆栈中 - 如果您使用的是 NavigationBar 或自定义导航视图,则将
.present
修改器添加到 NavigationBar 或自定义导航视图中。
基本示例
struct ContentView: View {
@State var showToast = false
var body: some View {
VStack {
// your screen main stack
Button(action: {
self.showToast.toggle()
}) {
Text("Show Toast")
.foregroundColor(.black)
}
}
.present(isPresented: self.$showToast, type: .toast, position: .top) {
/// create your own view for toast
self.createTopToastView()
}
}
func createTopToastView() -> some View {
VStack {
Spacer(minLength: 20)
HStack() {
Image("mike")
.resizable()
.aspectRatio(contentMode: ContentMode.fill)
.frame(width: 50, height: 50)
.cornerRadius(25)
VStack(alignment: .leading, spacing: 2) {
HStack {
Text("Mike")
.foregroundColor(.white)
.fontWeight(.bold)
Spacer()
Text("10:10")
.font(.system(size: 12))
.foregroundColor(Color(red: 0.9, green: 0.9, blue: 0.9))
}
Text("Hey, Don't miss the WWDC on tonight at 10 AM PST.")
.lineLimit(2)
.font(.system(size: 14))
.foregroundColor(.white)
}
}.padding(15)
}
.frame(width: UIScreen.main.bounds.width, height: 110)
.background(Color(red: 0.85, green: 0.65, blue: 0.56))
}
}
非常易于自定义!
必需参数
presented
- 绑定以确定消息视图是否应在屏幕上显示或隐藏
view
- 要在消息视图中显示的视图
可选自定义参数 - 可选参数
元素 | 声明 | 描述 |
---|---|---|
类型 | 类型: MessageType |
设置视图警报、提示和浮动的类型。 |
位置 | 位置: Position |
顶部或底部(在默认情况下,它仅确定动画方向)。 |
动画 | 动画: Animation |
为消息视图滑入屏幕的自定义动画。 |
自动隐藏时长 | 自动隐藏时长: Double? |
消息视图消失后的时间。 |
点击关闭 | 点击关闭: Bool |
在消息视图上点击它应消失。 |
点击事件 | 点击事件: () -> Void |
在消息视图上点击执行任何操作或导航。 |
外部点击关闭 | 外部点击关闭: Bool |
在外部点击时消息视图应消失。 |
查看演示项目以获取更多示例。
🗂 查看我们的其他库→
MIT 授权
版权所有 (c) 2020 Simform Solutions
本软件及相关的文档文件(以下称为“软件”)的副本,允许任何个人免费获取并使用该软件,不受限制,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件复制品,并允许获得该软件的个人再次分发,但须遵守以下条件
上述版权声明和本授权声明应当包括在软件的所有副本或主要部分中。
本软件按“原样”提供,不提供任何形式保证,明示或暗示,包括但不限于适销性、适用于特定目的和不侵犯版权。在任何情况下,作者或版权所有者不对任何索赔、损害或其他责任负责,无论源于合同、侵权或其他方式,均与软件或软件的使用或其他操作无关。