YJKit 1.0.1

YJKit 1.0.1

测试已测试
语言语言 Obj-CObjective C
许可证 MIT
发布最新发布2016年8月

huang-kun 维护。



YJKit 1.0.1

  • 作者
  • huang-kun

简介

如果你更倾向于阅读中文,可以点击这里


YJKit 是一个有用的 Cocoa Touch 库扩展。以下是菜单列表。

  • Foundation 扩展
    • 运行时扩展
      • 方法交换,关联标识符/标签,检查是否为类,检查是否为标记指针,检查是否可变
      • isWeakDelegateByDefault/isWeakDataSourceByDefault 用于检查保留属性属性是否为 delegate 或 dataSource 的弱引用(与 assign 相反)
      • 使用 IMP 插入来通过调用原始方法执行额外工作。这被用于:1.安全的 kvo dealloc;2.调用安全的 isEqual: 方法。
    • YJSafeKVO
      • 提供安全的简单 API 进行键值观察。
      • 提供订阅功能和支持单重和多重键路径绑定。
      • 有关更多信息,请点击 此处
    • YJCollection/YJSequence
      • 添加集合扩展:映射、过滤、归约、扁平...
      • 添加序列扩展:删除第一个、删除最后一个、前缀、后缀...
    • 其他
      • NSBundle 扩展 API,NSTime 块支持。
  • UIKit 扩展
    • UIScreen 装备设备屏幕适配(YJScreenDisplayResolution,YJScreenDisplayAspectRatio)
      • [UIScreen mainScreen].displayResolution
      • [UIScreen mainScreen].displayAspectRatio
    • YJGrid… spring & structs on UIView category
    • UIImage 扩展:包加载和图像调整大小。
    • UIImageView 扩展:yj_contentMode 属性,提供 UIViewContentMode 没有的组合图像显示选项
      • imageView.yj_contentMode = YJViewContentModeAspectFit | YJViewContentModeTop;
    • UIColor 扩展
      • 支持十六进制值用于 UIColor 生成
      • 提供 RGBColor 作为轻量级的 c struct 保存颜色成分值,支持 NSValue 和 boxable 包装。
    • 支持的 UIKit 块 API
      • UIControl
      • UIAlertView
      • UIGestureRecognizer
      • UIAlertSheet
      • UIBarButtonItem
    • UITextView,UITextField 的 autoResignFirstResponder 属性。
      • UITextView 也支持占位符属性。
    • YJMaskFamily - 基于CALayer的圆角家族。
      • 支持 IBDesignable 和 IBInspectable。
      • 高性能,无需合成颜色和离屏渲染。
      • 自定义子类:YJRoundedCornerView、YJRoundedCornerImageView、YJCircularImageView、YJRoundedCornerButton、YJRoundedCornerLabel、YJSemicircularCornerButton、YJSemicircularCornerLabel
  • CoreGraphics 扩展
    • NSValue+CGFloat
    • CGGeometry 扩展与 CGSize 和 CGRect
      • CGSizeScaleToSize()
      • CGRectPositionToRect()
      • CGRectPositioned()
      • 在演示应用中查看更多信息。
  • 其他扩展
      • execute_once()、perform_once()...
      • 使分配属性代理或数据源表现得像弱引用。
        • YJ_WEAKIFY_DELEGATE_AND_DATASOURCE_FOR_CLASS
        • YJ_WEAKIFY_DELEGATE_AND_DATASOURCE_BY_SWIZZLING_SETTERS
        • YJ_WEAKIFY_DELEGATE_AND_DATASOURCE_BY_IMPLEMENTING_SAFE_SETTERS
    • YJTuple:
      • 支持宏初始化。
      • 推荐使用子类化。
    • YJGroupedStyleTableViewController
      • 使用更少的代码构建具有许多详细自定义的分组样式tableView。
      • 默认样式是iOS设置应用样式。
      • 点击此处查看更多截图。
    • YJPhotoLibrary:将图片保存到iOS相册。

安装

  • 需要Xcode 7.3+支持NS_SWIFT_NAME,因此它可以暴露API以供Swift使用,感觉更加Swift化。
  • 需要Cocoapods。在Podfile中添加use_frameworks!以避免在Cocoapods项目中定义IB_DESIGNABLE时的编译错误。
platform :ios, '7.0'
use_frameworks!
pod 'YJKit'

作者

huang-kun,[email protected]

许可

YJKit在MIT许可下可用。有关更多信息,请参阅LICENSE文件。