一个用于 SwiftUI 的 Toast 提示通知库。
import SwiftUI
import Toasts
@main
struct MyApp: App {
var body: some Scene {
WindowGroup {
ContentView()
.installToast(position: .bottom)
}
}
}
@Environment(\.presentToast) var presentToast
Button("Show Toast") {
let toast = ToastValue(
icon: Image(systemName: "bell"),
message: "You have a new notification."
)
presentToast(toast)
}
presentToast(
message: "Loading...",
task: {
// Handle loading task
return "Success"
},
onSuccess: { result in
ToastValue(icon: Image(systemName: "checkmark.circle"), message: result)
},
onFailure: { error in
ToastValue(icon: Image(systemName: "xmark.circle"), message: error.localizedDescription)
}
)
let toast = ToastValue(
message: "Message only toast."
)
let toast = ToastValue(
message: "Toast with action required.",
button: ToastButton(title: "Confirm", color: .green, action: {
// Handle button action
})
)