SugarToast 1.0.1

SugarToast 1.0.1

Tigran Gishyan 维护。



  • 作者
  • Tigran Gishian

SugarToast

SugarToast 是一个 Swift 扩展,它添加了 toast 通知功能。它高度可定制、轻量级且易于使用。大多数 toast 通知只需要几行代码即可触发。SugarToast 可以通过 Swift 包管理器 获取。

屏幕截图

alt tag

功能

核心功能

  • toast 出现的顶部和底部位置
  • 可定制的 toast 属性:填充、边距、间距、半径、背景颜色、字体等...
  • 显示带有或不带图片的 toast 或更改图片位置:.leadingPinnedImage.trailingPinnedImage.centeredImage
  • 更改自动隐藏持续时间
  • 回调以捕获销毁事件
  • 启用或禁用触摸事件销毁功能

可用性

  • Swift 5.4(主分支)
  • iOS >= 13.0

演示示例应用程序

  • SugarToast/SampleApp/SampleApp.xcodeproj 是 iOS 的演示项目
  • 请确保您正在运行支持的 Xcode 版本。
    • 通常在几行以上这里指定。
    • 在大多数情况下,这将是最新版本的 Xcode。

用法

为了正确编译

在您的 ViewController 中初始化某处

    func createSimpleToast() {
        let data = ToastViewData(image: UIImage(named: "info")!,
                                 title: "Sugar Title",
                                 subtitle: "Sugar Subtitle")
                    
        let presenter = ToastView.presenter(forAlertWithData: data)
        present(presenter, animated: true)
    }

自定义

    func createCustomizedToast() {
        let data = ToastViewData(image: UIImage(named: "info")!,
                                 title: "Sugar Title",
                                 subtitle: "Sugar Subtitle")
        
        var settings = ToastSettings()
        settings.type = .trailingPinnedImage
        settings.titleTextAlignment = .center
        settings.subtitleTextAlignment = .center
        settings.backgroundColor = .systemGreen
        settings.verticalSpacing = 30
        settings.horizontalSpacing = 15
        settings.cornerRadius = 0

        var appearance = ToastAppearance()
        appearance.position = .top
        appearance.autohideDuration = 5
        appearance.horizontalPaddings = 0
        appearance.verticalPaddings = 0
        
        let presenter = ToastView.presenter(forAlertWithData: data,
                                            settings: settings,
                                            appearance: appearance)
        present(presenter, animated: true)
    }

回调监听器

    func createToastWithCompletion() {
        let data = ToastViewData(image: UIImage(named: "info")!,
                                 title: "Sugar Title")
                    
        let presenter = ToastView.presenter(forAlertWithData: data)
        presenter.closeAction = { [weak self] in
            print("Your business flow here...")
        }
        present(presenter, animated: true)
    }

许可协议

SugarToast 在 MIT 许可下可用。有关更多信息,请参阅 LICENSE 文件。