Briggs 3.0.0

Briggs 3.0.0

测试已测试
语言语言 SwiftSwift
许可证 MIT
发布上次发布2017年10月
SwiftSwift 版本3.0
SPM支持 SPM

Ada Turner 维护。



Briggs 3.0.0

  • Ada Turner

Briggs

UITraitCollection 的重新思考

如在 POSSIBLE Mobile Insights 中所见!

如果为特定的 trait collections 设置任意约束、视图和行为就像一样简单

let exclusiveButton = UIButton(type: .System)
let traits: [AdaptiveAttribute] = [
    Idiom.Phone,
    Scale.TwoX,
    ForceTouch.Available,
    SizeClass.VerticalRegular,
    SizeClass.HorizontalCompact,
]

addViewFor(traits, view: exclusiveButton, to: view, withConstraints: [
    exclusiveButton.centerXAnchor.constraintEqualToAnchor(view.centerXAnchor),
    exclusiveButton.centerYAnchor.constraintEqualToAnchor(view.centerYAnchor),
])

摘要

UITraitEnvironment 对视图和视图控制器来说太酷了,不容局限于它们!

Briggs 旨在为 Apple 的 API 提供一个关键缺失的部分:UITraitEnvironment.addChildTraitEnvironment:,并为 UITraitCollection 添加了大量糖分。

组件

  • AdaptiveElement:子节点——接收 trait collection 信息
  • AdaptiveInterface:父节点——提供 trait collection 信息
  • AdaptiveAttribute:特征——描述特征集合信息

容器

  • AdaptiveBehavior:将行为和反行为与一组特性关联

    如果传入的特性匹配,则执行行为,否则执行反行为。

  • AdaptiveConstraintContainer:将一组约束与一组特性关联

    如果传入的特性匹配,则激活约束,否则停用。

  • AdaptiveViewContainer:将视图与一组特性关联

    如果特性匹配,则将视图添加到层次结构中,否则删除视图。

要求

  • iOS 9.0+
  • Xcode 7.3+

安装

手动安装

如果您不想使用上述任何依赖管理器,可以手动将 Briggs 集成到您的项目中。

嵌入式框架

  • 打开终端,cd 到您的顶级项目目录,如果您不是将项目初始化为 git 仓库,则运行以下命令
$ git init
  • 通过运行以下命令将 Briggs 作为 git 子模块 添加
$ git submodule add https://github.com/auswahlaxiom/Briggs.git
  • 打开新的 Briggs 文件夹,并将 Briggs.xcodeproj 拖动到您应用程序的 Xcode 项目的“项目导航器”中。

    它应显示在您应用程序的蓝色项目图标之下。它是在其他所有 Xcode 组之上还是之下都无关紧要。

  • 在项目导航器中选择 Briggs.xcodeproj,并验证部署目标是否与您的应用程序目标匹配。

  • 接下来,在项目导航器中(蓝色项目图标)选择您的应用程序项目以导航到目标配置窗口,并在侧边栏中“目标”标题下选择应用程序目标。
  • 在该窗口的标签栏中,打开“通用”面板。
  • 在“已嵌入的二进制文件”部分下点击 + 按钮。
  • 您将看到两个不同的 Briggs.xcodeproj 文件夹。您可以从任何一个中选择框架。
  • 选择 Briggs.framework 并点击 添加

    Briggs.framework 会自动添加为目标依赖项,链接框架和嵌入框架,这需要在模拟器和设备上构建。

  • 添加 import Briggs 源文件并开始编码!

用法

要深入了解 Briggs,请访问 重新构思 UITraitCollection with Briggs

致谢

Briggs 由 Ada Turner 创建,她是 POSSIBLE Mobile 的一名 iOS 开发者。

许可

Briggs 按照MIT许可发布。有关详细信息,请参阅LICENSE