TheDistanceCore 1.3.7

TheDistanceCore 1.3.7

测试测试通过了
语言语言 SwiftSwift
许可证 MIT
发布最后发布2018年12月
SPM支持 SPM

Vlad AlexaAnh TranBen BaggleyJames Shaw 维护。



  • The Distance

TheDistanceCore

Carthage compatible MIT license

利用 The Distance 的便捷函数更快地开发。

要求

  • iOS 8.0+
  • Xcode 7.3
  • Swift 2.2

安装

由于它减少了应用开发过程中的构建时间,因此 Carthage 是首选的依赖关系管理器。TheDistanceCore 已为 Carthage 构建过。将以下内容添加到 cartfile 中并运行:

github "TheDistance/TheDistanceCore"

carthage update TheDistanceCore

根据 Carthage 指示将框架添加到您的项目中。

特性

减少样板代码有助于我们更快地开发功能,并确保它们在平台更新后仍然无错,这样我们就不会忘记难以处理的边缘情况。

TheDistanceCore 包含简单的扩展和可重用类,这些类在多个项目中用到。该项目旨在包含非常通用的功能小块。更具体或依赖其他框架的代码不应包含在此处。

完整的文档可在我们的 GitHub 页面上找到:完整文档

功能包括

  • 视差滚动:基于 UIScrollView 的内容偏移实现“视差滚动”的标准协议。
  • Storyboard 加载器:Storyboard 很容易变得庞大且加载缓慢。通常可以将 Storyboard 拆分为相关的部分,但如果在整个应用程序中管理这些部分,可能会很混乱。StoryboardLoader 协议通过允许您为 Storyboard 和 ViewController 定义枚举,并使用 StoryboardLoader.instantiateViewControllerWithIdentifier(_:) 实例化它们,从而简化这一过程。
  • 纯 Swift 键值观察NSObject 实现了一个名为 methodSignatureForSelector: 的方法,该方法将字符串转换为方法。纯 Swift 类没有这个方法,因此不能天生执行 KVO 或观察 NSNotificationCenter 的帖子。ObserverObjectObserverNotificationObserver 解决了这个问题。
  • NSLayoutConstraints:默认的 NSLayoutConstraint 构造函数很清楚,但在创建标准约束时可能很繁琐。constraintsToSize(...)constraintsToAlign(...) 简化了程序性的约束创建过程。还提供了其他方便的初始化器。
  • 请求缓存控制:不是所有的 API 都在带有 if-modified-since 标头的请求中以 304 未修改状态响应。在相同的网络请求之间强制执行固定的时间限制可能很有用。RequestCache 协议简化了检查自上次成功请求后的时间间隔。
  • 扩展框架:API 限于适合扩展的框架版本。

其他功能包括

  • 来自网络和位置操作的友好 NSError
  • 使用 .map({ ... }) 创建 Swift Dictionary 的更简洁语法。
  • 简化了移除空格后的字符串的简写语法。
  • 为 Google Chrome 或 Safari 简化了 URL 打开。
  • 默认使用比较运算符进行日期比较。
  • 标准设备依赖的旋转(iPhone 和 tablets 为 .AllButUpsideDown,iPhone 锁定为纵向)
  • CGRectUIEdgeInsets 常见计算。

通信

  • 如果您发现了一个错误,请打开一个 issue。
  • 如果您有功能请求,请打开一个 issue。
  • 如果您想要贡献,请提交一个 pull request。
  • 如果您想询问一个一般问题,请通过电子邮件发送至 [email protected]