Tide 3.0.0

Tide 3.0.0

测试已测试
语言语言 SwiftSwift
许可 MIT
发布最后发布2017年2月
SwiftSwift 版本3.0
SPM支持 SPM

Drew Kiino 维护。



Tide 3.0.0

  • 作者:
  • [Andrew Aquino]

GitHub Logo

强大的封装器

一个图像下载和处理框架,由 Gavin Bunney 的 Toucan,Olivier Poitrey 的 SDWebImage,和 Due Munk 的 AsyncSwift 提供支持,所有这些都封装在一个高效且强大的封装器中。

通过一个单一的完全功能扩展,您可以使用一行代码一次性执行图像下载、图像处理和图像处理。所有这些过程都在后台线程中发生,而且从不侵入,性能优异且高效。

安装

pod 'Tide'

下载图像

profileImageView.imageFromSource("https://i.ytimg.com/vi/tntOCGkgt98/maxresdefault.jpg")

处理图像

所有选项都是这些

profileImageView.imageFromSource(
  URL: "https://i.ytimg.com/vi/tntOCGkgt98/maxresdefault.jpg",
  placeholder: UIImage(named: "default-placeholder"),
  fitMode: .Clip,
  mask: .Squared,
  cornerRadius: 8.0,
  borderWidth: 1.0,
  borderColor: .redColor(),
  animated: true,
  forced: false,
  progress: { progress in

    // do something with progress

}) { image in

  // do something with image
}

封装器功能

  • URL: String?

    • 图像下载的网页 URL 字符串。

  • 占位符: UIImage?

    • 如果下载的图像返回 nil,则使用的占位符图像。

  • fitMode: Tide.fitMode

    • .Clip 调整图像大小以适合其容器而不扭曲图像。(默认值)
    • .Crop 通过裁剪多余部分来调整图像以适合其容器。
    • .Scale 通过缩放图像以适合其容器来调整图像大小。
    • .None 保留原始图像大小。

  • mask: Tide.Mask

    • .Rounded 使用圆形饼干模具裁剪图像,非常适合个人资料图片
    • .Squared 使用圆角方形饼干模具裁剪图像。
    • .None 保持图像不变。(默认值)

  • cornerRadius: CGFloat

    • .Squared 面具的角半径。
    • 0.0(默认值)

  • borderWidth: CGFloat

    • 应用面具后的图像的边框宽度。
    • 0.0(默认值)

  • borderColor: UIColor

    • 应用面具后的图像的边框颜色。
    • .whiteColor()(默认值)

  • animated: Bool

    • 如果设置为true,则在从url或占位符设置后,图像将淡入
    • true(默认值)

  • 强制Bool

    • 如果设置为true,如果从网络下载的图像或来自占位符返回的图像为nil,则设置将图像将变为nil
    • 如果您想由url是否存在来决定应用程序中看到的图像,这是一个不错的选择。
    • false(默认值)

  • 进度(Float -> Void)?

    • 此块提供从网络下载的图像的进度,范围为0 - 100

  • (image: UIImage?) -> Void)?

    • 此块返回从网络下载的图像、占位符、如果前两个都没有返回原始图像设置,或者如果没有从任何地方返回图像,则为nil

便捷函数

  • .imageFromSource()也扩展到UIButtons,并带有所有功能以及一个UIControlState参数。

  • 以下方法同时从UIImageViewUIButton扩展而来

    • .fitClip(image: UIImage?, fitMode: .Clip, completionHandler: ((image: UIImage?) -> Void)?)

    • .rounded(image: UIImage?, cornerRadius: CGFloat, borderWidth: CGFloat, borderColor: UIColor, completionHandler: ((image: UIImage?) -> Void)?)

    • .squared(image: UIImage?, cornerRadius: CGFloat, borderWidth: CGFloat, borderColor: UIColor, completionHandler: ((image: UIImage?) -> Void)?)

致谢

感谢Gavin BunneyOlivier PoitreyDue Munk提供了这个包装器的基础。

版权

如果您的作品在此框架中呈现,并且您不希望这样,请通过以下方式告知我:

 [email protected]

许可

版权所有 © 2016 by Andrew AquinoTotemV.LLC

许可 MIT (太平洋)

允许任何获得本软件及其相关文档副本(“软件”)的个人在不限制条件下处理软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件的副本,并允许将软件提供给接受该软件的个人,前提是满足以下条件:

必须在所有副本或实质部分的软件中包含上述版权声明和本许可声明。

软件按照“现状”提供,不提供任何明示或暗示的保证,包括但不限于适用性、针对特定目的的适配性和非侵权性保证。在任何情况下,作者或版权所有者都不应对任何索赔、损害或其他责任负责,无论是基于合同、侵权或其他行为,包括但不限于软件或其使用或其他方式的软件的损害。状态API培训商店博客关于