伊万·鲁布廖夫

4个pods

PersistentStorageSerializable

此pods中协议的数量有助于将Swift类或结构体序列化到持久存储(如User Defaults或Keychain)。类/结构体必须只包含简单数据类型的属性。这些类型是:Data,String,Int,Float,Double,Bool,URL,Date,Array,或Dictionary。从您的结构体采用PersistentStorageSerializable协议。然后调用您结构体的实例上的pullFromUserDefaults()或pushToUserDefaults()。

许可证:MIT

  • Swift

VRAppSettings

这个超类使得处理用户的偏好(应用程序设置)更加容易。它旨在主要用于iOS。此类的一个继承者将应用程序设置保存在属性中,并存储在默认系统中。尽管设置值不会直接通过NSUserDefaults类访问,而只能通过VRAppSettings继承者的setter和getter进行访问。这为应用程序设置的定义提供了公共场所。在setter和getter中对设置值进行范围和一致性检查的可能性。可以使用重构工具在项目范围内更改设置名称。

许可证:MIT

  • Objective C

VRFoundationToolkit

通过分类、宏和类扩展NSFoundation。

分类

  • NSArray+VRArgument - 依次将数组中的每个元素传递给目标对象或类的提供的选择器。
  • NSArray+VRCheckMembers - 检查数组中所有成员是否属于指定的类。
  • NSArray+VRIndexes - 返回传入对象的索引集。
  • NSBundle+VRDisplayName - 获取捆绑的本地化显示名称,如果名称不可访问,则回退到非nil的字符串预编译常量。
  • NSDate+VRDurations - 计算两个日期之间的天数、小时数、分钟数。返回一天结束时。按指定的NSCalendarUnit单位比较两个日期。返回特定于NSCalendarUnit单位的NSDateComponents。返回默认的NSCalendar。
  • NSFileManager+VRDocumentsDirectory - 快速访问Documents目录和Temporary目录路径。随机文件名生成等。
  • NSMutableDictionary+VRExchangeKeys - 在字典中交换键。
  • NSObject+VRPropertiesProcessing - 使用块处理对象属性。为任何对象按属性进行哈希、相等以及编码/解码。
  • NSObject+VRProtocolConformation - 检查对象/类是否响应对协议要求的所有选择器。在委托setter中使用作为对象前提条件的校验很有用。
  • RTProtocol+VRMethods - 返回协议中定义的方法。
  • NSString+VRmd5 - 字符串的MD5哈希。
  • NSTimer+VRWithBlock - 执行块而不是选择器的定时器。
  • NSOperationQueue+VRNamedBlock - 向队列添加带有名称的块操作。

  • VREnumXXX - 生成带有实用函数的枚举。NSStringFromXXX通过值返回枚举常量。isValidXXX检查枚举值的范围。
  • VRLOGxxx - 多级别日志和断言宏。可以连接到首选的日志系统。VRPRECONDITIONxxx宏用于实现轻量级合同设计。
  • VRKeyName - 将表达式转换为-[NSCoder encodeObject:withKey:]的键。通过XCode自动完成帮助创建名称很有用。
  • VRSingleton - 返回单例。
  • VROBJCTYPExxx - 返回传入变量(或类型)的Objective-C类型字符串表示形式。VRISTYPEEQUALTOTYPE(V1, V2)比较两个传入值/类型的Objective-C类型。
  • VRBundledName - 返回包含反向DNS捆绑名称并紧跟在字符串末尾的名称。
  • VRRandom - 通过从random()得到的结果计算返回随机的浮点值。

  • VRURLConnectionChecker - 使用完成和错误块检查默认站点或指定的URL是否可访问。

函数

  • NSComparisonInvertedResult - 反转比较结果。
  • VRCanPerform - 检查对象是否符合协议并响应用户选择。在委托设置中的先决条件检查中很有用。

许可证:MIT

  • Objective C

VRMaskColoredButton

这是一个 UIButton 类的子类,允许您独立设置按钮图片的形状和颜色。与平面设计配合得更好。

许可证:MIT

  • Swift