ForOneNight 1.0.3

ForOneNight 1.0.3

测试已测试
Lang语言 SwiftSwift
授权协议 MIT
发布最新发布2017年6月
SwiftSwift版本3.0
SPM支持SPM

PatrickChow维护。



  • PatrickChow

ForOneNight

适用于Swift的夜间模式解决方案

  • [x] 易于集成且高性能
  • [x] 提供UIKit和CoreAnimation的支持
  • [x] 链式语法

演示

集成

手动

运行ForOneNight(ForOneNight.xcodeproj)项目,设置所需类型,然后构建以得到Framework。

使用指南

如何让419正确启动?

419只管理两种模式的切换,它不考虑初始模式,所以项目开始时需要手动设置。主要考虑一些项目可能已经有一些标识两种模式的字段,所以内部不会有这样的逻辑。最好这样

application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
      ForOneNight.default.isNight = true or false
      ...
      ...
}

如何使用419?

419的使用非常简单,支持所有UIView和它的子类、UIBarItem和它的子类以及CALayer,之后会支持其他需要支持的类。可以通过 . 获取到nv,然后可以通过提示查看它所支持的属性,或者直接到源码中查看。例如设置一个view的背景

view.nv?.backgroundColor(UIColor.white, night: UIColor.black)

UILabel中设置属性字符attributedText可以使用

textLabel.nv?.attributesText(mutableAttributedString)

而在组装所需的NSAttributedString时,为其中的key: NSForegroundColorAttributeName,目前提供了这样的设置方式

PropertyBox(day: UIColor.white, night: UIColor.black)

当有多个属性需要设置时,可以这样

textLabel.nv?.backgroundColor(UIColor.white, night: UIColor.black).attributesText(mutableAttributedString)

需要注意的是,在CALayer中设置其几个渲染属性时,需要使用UIColor。

layer.nv?.set(borderColor: UIColor.white, night: UIColor.black)

如何切换模式?

在适当的时机调用switchVersion即可

ForOneNight.default.switchVersion()

运行示例

成功构建ForOneNight项目后,运行Sample,如果遇到错误信息

dyld: Library not loaded: 
...
...

请在Sample->General->Embedded Binaries中添加ForOneNight.frameworks

联系我

欢迎提出你们的意见! 邮箱:[email protected]

QQ: 254335290