iOS 应用程序范围内的用户通知系统。
Toast
被设计为拥有极简的 API,且不会影响现有的界面。 它在自己的 UIWindow
中显示消息,并在最后一条消息消失后自动关闭。
当用户触摸消息时,消息的内容将被复制到剪贴板,并且消息将被关闭。 当用户触摸任何显示的消息之外的区域时,所有可见的消息都将被关闭,并且触摸事件将继续传递到您的应用程序界面。
消息可以从任何线程显示。 Toast
简单地将所有调用异步地分派到主线程。
完全支持从右到左的语言。
浅色 | 深色 |
---|---|
![]() |
![]() |
不需要启动时的设置。 显示、关闭和排列屏幕上的消息是完全自动的。
对于大多数常见情况,您可以使用两个预定义的函数。 一个用于成功的事件
Toast.info(
title: "Request accepted",
text: "We will contact you within a day."
)
另一个用于失败的事件
Toast.error(
title: "Authorization error",
text: "User name or password is incorrect."
)
要显示具有自定义颜色的消息,请使用
Toast.show(
title: "Package status",
text: "Transferred to a local agent for delivery.",
foreground: .white,
background: .systemTeal,
touched: .white,
icon: UIImage(systemName: "shippingbox.fill"),
accessory: UIImage(systemName: "chevron.forward"),
timeout: 6,
tap: {
// show status page
}
)
Toast
将其默认值存储在 Toast/Toast/Config
结构中。 您可以像这样调整它
Toast.set(config: {
$0.text.font = .preferredFont(forTextStyle: .callout)
$0.cornerRadius = 16
$0.shadowOpacity = 0.15
$0.info.icon = UIImage(systemName: "info.circle.fill", withConfiguration: UIImage.SymbolConfiguration(pointSize: 32))
$0.info.timeout = 6
$0.error.icon = UIImage(systemName: "exclamationmark.triangle.fill", withConfiguration: UIImage.SymbolConfiguration(pointSize: 32))
})
Денис Либит, bteapot@me.com
Toast 在 MIT 许可下可用。 有关更多信息,请参见 LICENSE 文件。