CYHelper 1.1.3

CYHelper 1.1.3

测试已测试
语言语言 Obj-CObjective C
许可证 MIT
发布最后一次发布2014年12月

未指定 维护。



CYHelper 1.1.3

  • lancy

关于

CYHelper 是一个为 iOS 开发者提供的 Objective-C 库。它试图提供 iOS 的所有有用特性,并将它们封装成易于使用的 API。

有什么新功能?

1.1.3

  • 关联对象简单。
  • 将用户信息附加到 UIAlertView、UIActionSheet 和 UIControl

功能

  • 关联对象简单。
  • 将用户信息附加到 UIAlertView、UIActionSheet 和 UIControl
  • 向默认通知中心发布和观察通知简单。
  • 访问子数组简单
  • 使用日期格式将日期转换为字符串
  • 使用 NSData、NSString 和 NSDictionary 进行 JSON 序列化
  • 使用 NSData、NSString 生成 MD5
  • 使用字符串进行词标记化
  • Singleton (sharedInstance 方法) 宏
  • 打印运行时调用栈
  • 检查操作系统版本、应用版本、设备型号
  • 检查设备是否越狱
  • 在延迟后执行块
  • 使用 RGBHex 创建 UIColor
  • 访问 UIView 的 x、y、宽度、高度、右边距、底边距、原点和大小简单
  • 确定是否为 iPhone 或 iPad
  • 移除视图的所有子视图
  • NSNumber 简单计算

要求

  • iOS 5.0 或更高版本
  • 支持 ARC

安装

  • 使用 CocoaPods 安装 CYHelper。
  • 或者,简单地将 CYHelper 文件夹拖到您的项目中,并导入 "CYHelper.h"。否则,您也可以仅添加 CYHelper 的单个组件,只需导入相应的头文件即可。

API 列表

UIAlertView + CYHelper.h (新增)

@property (strong, nonatomic) NSDictionary *userInfo;

UIActionView + CYHelper.h (新增)

@property (strong, nonatomic) NSDictionary *userInfo;

UIControl + CYHelper.h (新增)

@property (strong, nonatomic) NSDictionary *userInfo;

NSObject + AssociatedObjects.h (新增)

- (void)associateValue:(id)value withKey:(const void *)key;
- (void)atomicallyAssociateValue:(id)value withKey:(const void *)key;
- (void)associateCopyOfValue:(id)value withKey:(const void *)key;
- (void)atomicallyAssociateCopyOfValue:(id)value withKey:(const void *)key;
- (void)weaklyAssociateValue:(id)value withKey:(const void *)key;
- (id)associatedValueForKey:(const void *)key;
- (void)removeAllAssociatedObjects;
+ (void)associateValue:(id)value withKey:(const void *)key;
+ (void)atomicallyAssociateValue:(id)value withKey:(const void *)key;
+ (void)associateCopyOfValue:(id)value withKey:(const void *)key;
+ (void)atomicallyAssociateCopyOfValue:(id)value withKey:(const void *)key;
+ (void)weaklyAssociateValue:(id)value withKey:(const void *)key;
+ (id)associatedValueForKey:(const void *)key;
+ (void)removeAllAssociatedObjects;

NSNumber + CYHelper.h

// DO NOT USE THEM when you have perfomace problem.
// These method convert NSNumber to NSDecimalNumber to process the calculation.
// I provide these methods just for convenience.
// NSDecimal(C-level) is much faster than NSDecimalNumber, can be a better choice.
- (NSNumber *)addNumber:(NSNumber *)number;
- (NSNumber *)subNumber:(NSNumber *)number;
- (NSNumber *)mulNumber:(NSNumber *)number;
- (NSNumber *)divNumber:(NSNumber *)number;
- (NSNumber *)modNumber:(NSNumber *)number;

NSObject + CYNotification.h

- (void)postNotificationName:(NSString *)notificationName;
- (void)postNotificationName:(NSString *)notificationName userInfo:(NSDictionary *)userInfo;
- (void)observeNotificationName:(NSString *)notificationName selector:(SEL)selector;
- (void)unObserveNotificationName:(NSString *)notificationName;

NSObject + CYHelper.h

- (void)performBlock:(void (^)(void))block afterDelay:(NSTimeInterval)delay;

UIColor + CYHelper.h

+ (UIColor *)colorWithRGBHex:(UInt32)hex;
+ (UIColor *)colorWithRGBHex:(UInt32)hex alpha:(CGFloat)alpha;

UIView + CYHelper.h

@property (nonatomic, readwrite) CGFloat x;
@property (nonatomic, readwrite) CGFloat y;
@property (nonatomic, readwrite) CGFloat width;
@property (nonatomic, readwrite) CGFloat height;
@property (nonatomic, readwrite) CGSize size;
@property (nonatomic, readwrite) CGPoint origin;
@property (nonatomic, readwrite) CGFloat bottom;
@property (nonatomic, readwrite) CGFloat right;
- (void)removeAllSubviews;

NSArray + CYHelper.h

- (NSArray *)subarrayFromIndex:(NSUInteger)index;
- (NSArray *)subarrayToIndex:(NSUInteger)index;

NSDate + CYHelper.h

// example: dateFormat:@"yyyy-MM-dd 'at' HH:mm";
// formattedDateString: 2001-01-02 at 13:00
- (NSString *)stringWithDateFormat:(NSString *)dateFormat;

NSDictionary + CYHelper.h

- (NSData *)jsonData;
- (NSString *)jsonString;

NSData + CYHelper.h

- (NSData *)MD5;
- (NSString *)MD5String;
- (NSDictionary *)jsonObject;

NSString + CYHelper.h

- (NSDictionary *)jsonObject;
- (NSString *)MD5String;
- (NSArray *)arrayWithWordTokenize;
- (NSString *)separatedStringWithSeparator:(NSString *)separator;

CYSystemInfo.h (NEW)

#define IOS7_OR_LATER   
#define IOS6_OR_LATER   
#define IOS5_OR_LATER   
#define IOS4_OR_LATER
#define IOS3_OR_LATER
#define IS_IPHONE
#define IS_IPAD

+ (NSString *)osVersion;
+ (NSString *)appVersion;

+ (NSString *)deviceModel;

+ (BOOL)isJailBroken;
+ (NSString *)jailBreaker;

CYSingletonHelper.h

#define AS_SINGLETON( __class )
#define DEF_SINGLETON( __class )

CYRuntimeHelper.h

+ (void)printCallStackWithCount:(NSUInteger)count;

联系我

特别感谢

我参考了以下代码。感谢他们激发了我的灵感。感谢他们为开源社区做出的贡献。

许可协议

CYHelper可在MIT许可证下使用。

版权所有©2012 Lancy。

在此特此免费授权,任何人获得此软件及其相关文档的副本(以下简称“软件”),均可以在不受限制的情况下处理该软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本案例,并允许软件的接收者从事上述活动,前提是

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

软件按“原样”提供,不提供任何明示或暗示的保证,包括但不限于适销性、适用于特定目的和不侵犯知识产权的保证。在任何情况下,作者或版权所有者不应对任何索赔、损害或其他责任负责,无论是由合同、侵权或操作引起的,无论是在软件或软件的使用或任何其他联系中发生的。