RKCommonLibrary 0.2.9

RKCommonLibrary 0.2.9

测试已测试
Lang语言 Obj-CObjective C
许可证 MIT
Released上次发布2015年12月

Roman Kotov 维护。



  • Roman Kotov

为 iOS 项目提供的通用库。注意,0.2.x 版本与 0.1.x 版本的 compared to 方法名称有所变化!

为 iOS 项目提供的通用方法库。注意,0.2.x 版本相比 0.1.x 版本带来了方法名称的变化!

联系人

include

pod 'RKCommonLibrary'

#include "RKCommonLibrary.h"

RKDefines.h

  • UUIDString - 返回设备 UDID 的字符串形式
  • rootVC - 返回根 View Controller
  • userDefaults - 返回 userDefaults
  • classToString(myClass) - 返回类名字符串
  • NotificationAdd(sel,nameNotif) - 订阅事件通知
  • NotificationPost(name) - 发送事件通知
  • currentLocale - 返回当前区域
  • rk_mainBundle - [NSBundle mainBundle]
  • isRussian - 返回布尔值,指示是否为俄语区域
  • screenSize - 返回包含屏幕尺寸的结构
  • SCREEN_HEIGHT_LANSCAPE - 返回横屏模式下的屏幕高度(用于支持 iOS7 和 iOS8)
  • SCREEN_WIDTH_LANDSCAPE - 返回横屏模式下的屏幕宽度(用于支持 iOS7 和 iOS8)
  • isIpad - 返回布尔值,指示当前模型是否为 iPad
  • isIphone4 - 返回布尔值,指示当前模型是否为 iPhone 4
  • isIphone5 - 返回布尔值,指示当前模型是否为 iPhone 5
  • isIphone6 - 返回布尔值,指示当前模型是否为 iPhone 6
  • isIphone6Plus - 返回布尔值,指示当前模型是否为 iPhone 6+
  • SYSTEM_VERSION_EQUAL_TO(v) - 返回布尔值,指示当前操作系统版本是否等于 v
  • SYSTEM_VERSION_GREATER_THAN(v) - 返回布尔值,指示当前操作系统版本是否大于 v
  • SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(v) - 返回布尔值,指示当前操作系统版本是否大于或等于 v
  • SYSTEM_VERSION_LESS_THAN(v) - 返回布尔值,指示当前操作系统版本是否小于 v
  • SYSTEM_VERSION_LESS_THAN_OR_EQUAL_TO(v) - 返回布尔值,指示当前操作系统版本是否小于或等于 v
  • randFromTo(min, max) - 返回指定范围内的随机数
  • assetByScreenHeight(regular, longScreen) - 相对于屏幕高度进行偏移量,检查 iPhone 4 版本
  • RGB(r, g, b) - 根据 RGB 获取颜色
  • RGBA(r, g, b, a) - 根据 RGB 获取颜色,带有指定的透明度(alpha)
  • ClearColor - 获取透明颜色
  • DOLog - 如果是调试模式,则按格式输出到日志,否则不输出
  • DODiscLog - 如果是调试模式,则输出 @"%@", 否则不输出

RKBaseClass 类

基础类,其中重载了方法 description,用于输出类的属性信息。

使用 runtime.h 实现了 JSON 解析。

实现了 [object copy] 拷贝功能。

  • + (instancetype)initWithJson: - 使用 JSON 数据创建对象。属性名应与 JSON 中的键匹配
  • + (NSArray*)initArrayWithJsonArray: - 使用 JSON 数据创建包含多个对象数组的对象。属性名应与 JSON 中的键匹配
  • - (instancetype)initWithJson: - 使用 JSON 数据创建对象。属性名应与 JSON 中的键匹配
  • - (NSString*)rk_classStringForField: - 返回创建对象时应使用的数据在 JSON 中的对应类名
  • - (NSDictionary*)rk_keysForField - 返回用于映射的 {fieldName:jsonKey} 字典
  • + (instancetype)initWithData: - 使用通过 serializeToData 方法或 NSKeyedArchiver 类创建的 NSData 数据创建对象
  • - (instancetype)initWithData: - 使用通过 serializeToData 方法或 NSKeyedArchiver 类创建的 NSData 数据创建对象
  • - (NSData*)rk_serializeToData - 将对象序列化为 NSData 以便保存

RKCL 类

  • + (void)rk_safeWithBlock:catchBlock:finalyBlock: - 用于安全执行代码的方法
  • + (void)rk_safeWithBlock:catchBlock: - 用于安全执行代码的方法
  • + (void)rk_safeWithBlock: - 用于安全执行代码的方法
  • + (void)rk_performBlock:delay: - 定时执行块
  • + (void)rk_clearCookies - 快速清除 NSHTTPCookieStorage 中的 cookies
  • + (CGSize)rk_frameForText:sizeWithFont:constrainedToSize: - 返回放置文本的 frame 大小
  • + (NSString*)rk_endingForNumber:andEnding: - 根据数字和末尾数组返回单词的复数形式结尾

NSObject+RKNSObjectCategory.h

  • + (BOOL)isNilObject:(NSObject*)object - 返回对象是否为 nil
  • - (BOOL)isNil - 返回对象是否为 nil

UIImage+RKUIImageCategory.h

  • + (UIImage *)imageWithColor:(UIColor *)color - 创建具有指定背景颜色的 UIImage
  • + (void)cornerRadiusForPicture:(UIImage)image imageView:(UIImageView)imageView radius:(CGFloat)radius;
  • + (UIImage)cornerRadiusForPicture:(UIImage)image radius:(CGFloat)radius;

UITableView+RKUITableViewCategory

  • - (void)rk_registerNibWithClass:(Class)class - 使用 NSStringForClass 注册为 class 类的 Xib 单元格

UIView+RKUIViewCategory.h

  • @property (nonatomic, copy) NSString *rk_stringExtra - view 标签的属性(在运行时添加)
  • @property (nonatomic, assign) CGFloat x - X 坐标
  • @property (nonatomic, assign) CGFloat y - Y 坐标
  • @property (nonatomic, assign) CGFloat width - 宽度
  • @property (nonatomic, assign) CGFloat height - 高度
  • @property (nonatomic, assign) CGPoint origin - 原点
  • @property (nonatomic, assign) CGSize size - 尺寸
  • @property (nonatomic, assign) CGFloat centerX - X 中心坐标
  • @property (nonatomic, assign) CGFloat centerY - Y 中心坐标
  • @property (nonatomic, assign) CGFloat top - 顶部边缘
  • @property (nonatomic, assign) CGFloat bottom - 底部边缘
  • @property (nonatomic, assign) CGFloat left - 左边缘
  • @property (nonatomic, assign) CGFloat right - 右边缘
  • - (void)setZeroConstraints: - 将 view 绑定到 superView 的所有边缘
  • - (void)autoHeight - 根据包含的 subview 尺寸调整 view 的高度
  • - (void)rk_shakeView - 水平晃动 view
  • - (void)rk_printSubviewsWithIndentation: - 将 view 的文本层次结构输出到 NSLog
  • - (UIView *)rk_viewWithStringExtra: - 查找具有指定标签的 subview

NSString+RKNSStringCategory.h

  • - (BOOL)isEmpty - 返回 YES,如果字符串为空,否则返回 NO
  • - (NSString *)md5String - 返回 MD5 字符串
  • + (NSString *)md5String: - 返回 MD5 字符串

NSDate+RKNSDateCategory.h

  • + (NSString)rk_nowStringWithFormat:(NSString)format - 返回当前日期的个性化格式
  • + (NSString*)rk_nowString - 返回当前日期的格式 yyyy-MM-dd hh:mm:ss
  • + (NSString*)rk_nowStringDate - 返回当前日期的格式 yyyy-MM-dd
  • + (NSString*)rk_nowStringTime - 返回当前时间的格式 hh:mm:ss
  • + (NSTimeInterval)timeIntervalSince1970 - 返回自 1970 年 1 月 1 日以来的秒数
  • - (NSString)rk_stringWithFormat:(NSString)format - 以自定义格式返回日期
  • - (NSString*)rk_string - 以格式 yyyy-MM-dd hh:mm:ss 返回日期
  • - (NSString*)rk_stringDate - 以格式 yyyy-MM-dd 返回日期
  • - (NSString*)rk_stringTime - 以格式 hh:mm:ss 返回时间

UIColor+RKUIColorCategory.h

  • + (UIColor*)rk_colorWithHex:alpha: - 根据十六进制值和透明度值返回 UIColor
  • + (UIColor *)rk_colorWithHex: - 根据十六进制值返回 UIColor

UIViewController+RKUIViewControllerCategory.h

  • - (UINavigationController*)rk_vcToNavController - 创建 Navigation controller 并将当前根 View Controller 设置为

UINavigationController+RKUINavigationControllerCategory.h

  • @property (nonatomic, strong) NSString* backButtonTitle - "返回"按钮的文本

UILabel+RKUILabelCategory.h

  • - (CGFloat)autoHeight - 根据文本内容调整高度
  • - (CGFloat)autoWidth - 根据文本内容调整宽度

LICENSE

The MIT License (MIT)

版权所有 (c) 2015 Roman Kotov

任何人有权免费获得本软件和关联文档副本(“软件”),无需限制地使用软件,包括无限制地使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,并允许向得到软件的人授权从事上述行为,但需遵守以下条件

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

软件按“现状”提供,不提供任何担保,明示或默示的,包括但不限于对适销性、特定用途的适用性和非侵权的担保。在任何情况下,作者或版权所有者不对因合同、侵权或其他行为产生的任何索赔、损害或其他责任负责,无论是源于、因之而产生或与此相关的软件或其使用或任何其他处理。