美文网首页
OC-UIKit扩展

OC-UIKit扩展

作者: trinity_ | 来源:发表于2016-09-30 09:31 被阅读153次

NSString扩展


.h中-需要pod 'CocoaSecurity'

@interface NSString(extend)

- (NSString *)md5;/*md5加密*/

- (NSString*)base64_encode;/*base64加密*/

- (NSString*)base64_decode;/*base64解密*/

+ (NSString*)app_version;/*当前app版本*/

+ (NSString *)stringWithDate:(NSDate *)date dateFormat:(NSString *)dateFormat;/*将日期转化成字符串*/

+ (NSString *)className:(Class)_class;/*将类名转换成字符串*/

+ (NSString *)strWithDoubNum:(double)doubleNumber;/*统一项目中小数的位数*/

@end

.m中

@implementation NSString (extend)

- (NSString *)md5

{

CocoaSecurityResult* e = [CocoaSecurity md5:self];

return e.hexLower;

}

- (NSString *)base64_encode

{

NSData* data = [self dataUsingEncoding:NSUTF8StringEncoding];

CocoaSecurityEncoder* e = [[CocoaSecurityEncoder alloc] init];

return [e base64:data];

}

- (NSString *)base64_decode

{

CocoaSecurityDecoder* e = [[CocoaSecurityDecoder alloc] init];

NSString* ret = [[NSString alloc] initWithData:[e base64:self] encoding:NSUTF8StringEncoding];

return ret;

}

+ (NSString *)app_version

{

NSDictionary *info = [[NSBundle mainBundle] infoDictionary];

NSString *version = [info objectForKey:@"CFBundleShortVersionString"];

//NSLog(@"appver:%@",version);

return version;

}

+ (NSString *)stringWithDate:(NSDate *)date dateFormat:(NSString *)dateFormat

{

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];

[formatter setDateFormat:dateFormat];

return [formatter stringFromDate:date];

}

+ (NSString *)className:(Class)_class

{

return [NSString stringWithUTF8String:object_getClassName(_class)];

}

+ (NSString *)strWithDoubNum:(double)doubleNumber

{

return [NSString stringWithFormat:@"%.02lf",doubleNumber];

}

@end

UIImage扩展-改变image填充色


.h中-通过代码改变imag的填充色

@interface UIImage (extend)

- (UIImage *)imageWithTintColor:(UIColor *)tintColor;

- (UIImage *)imageWithGradientTintColor:(UIColor *)tintColor;

@end

.m中

- (UIImage *)imageWithTintColor:(UIColor *)tintColor

{

return [self imageWithTintColor:tintColor blendMode:kCGBlendModeDestinationIn];

}

- (UIImage *)imageWithGradientTintColor:(UIColor *)tintColor

{

return [self imageWithTintColor:tintColor blendMode:kCGBlendModeOverlay];

}

- (UIImage *)imageWithTintColor:(UIColor *)tintColor blendMode:(CGBlendMode)blendMode

{

UIGraphicsBeginImageContextWithOptions(self.size, NO, 0.0f);

[tintColor setFill];

CGRect bounds = CGRectMake(0, 0, self.size.width, self.size.height);

UIRectFill(bounds);

[self drawInRect:bounds blendMode:blendMode alpha:1.0f];

if (blendMode != kCGBlendModeDestinationIn) {

[self drawInRect:bounds blendMode:kCGBlendModeDestinationIn alpha:1.0f];

}

UIImage *tintedImage = UIGraphicsGetImageFromCurrentImageContext();

UIGraphicsEndImageContext();

return tintedImage;

}

NSDate扩展-将字符串变为NSDate


.h中

@interface NSDate (extend)

+ (NSDate *)dateWithString:(NSString *)string dateFormat:(NSString *)dateFormat;

@end

.m中

@implementation NSDate (extend)

+ (NSDate *)dateWithString:(NSString *)string dateFormat:(NSString *)dateFormat

{

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];

[formatter setDateFormat:dateFormat];

return [formatter dateFromString:string];

}

@end

相关文章

  • OC-UIKit扩展

    NSString扩展 .h中-需要pod 'CocoaSecurity' @interface NSString(...

  • Swift 扩展

    扩展UIView 扩展String 扩展UIColor 扩展UIButton 扩展String 扩展UIImage...

  • ES6扩展

    字符串的扩展正则的扩展数值的扩展数组的扩展函数的扩展对象的扩展

  • ES6扩展

    字符串扩展 正则扩展 数值扩展 函数扩展 对象扩展 数组扩展 字符串扩展 模版字符串 部分新的方法 padStar...

  • Swift--扩展

    扩展的概念 扩展计算属性 扩展方法 扩展构造函数 扩展下标 扩展的概念 在Swift中可以使用一种扩展机制,在原有...

  • 从Java到Kotlin(六)

    扩展与委托 目录 1.扩展 1.1 扩展函数 1.2 扩展属性 1.3 扩展伴生对象 1.4 扩展的作用域 2.委...

  • ES6基础-ES6的扩展

    进行对字符串扩展,正则扩展,数值扩展,函数扩展,对象扩展,数组扩展。 开发环境准备: 编辑器(VS Code, A...

  • Vue项目开发与规范--es6语法规范篇

    目录 简介 let const 解构赋值 正则的扩展 字符串的扩展 数值的扩展 数组的扩展 函数的扩展 对象的扩展...

  • Kotlin-面向对象-进阶

    扩展 扩展方法 Kotlin支持扩展方法和扩展属性。语法:被扩展的类/接口名.方法名() 父类不能使用子类的扩展方...

  • 2021-03-14

    请求链接,稍后更新 扩展点简述 扩展点的生命周期及扩展点的执行时机 扩展点的作用 扩展点实战 更多Spring扩展...

网友评论

      本文标题:OC-UIKit扩展

      本文链接:https://www.haomeiwen.com/subject/baflyttx.html