iOS开发-UIImage的常用分类

news/2024/7/4 1:43:11 标签: uiimage, class, Category, 图片
class="baidu_pl">
class="article_content clearfix">
class="htmledit_views">

//

//  UIImage+ZZ.h

//  ZZ_APP主流框架

//

//  Created by ZZ_Macpro on 15/9/25.

//  Copyright (c) 2015年 ZZ_Macpro. All rights reserved.

//

 

#import <UIKit/UIKit.h>

 

@interface UIImage (ZZ)

/**

 *  返回一张没有渲染的原始图片

 *

 *  @param name 文件名

 */

+ (UIImage *)oringinalImageWithName:(NSString *)name;

 

/**

 *  加载图片

 *

 *  @param name 图片

 */

+ (UIImage *)imageWithName:(NSString *)name;

 

/**

 *  返回一张自由拉伸的图片

 */

+ (UIImage *)resizedImageWithName:(NSString *)name;

 

/**

 *   返回能够自由拉伸不变形的图片

 *

 *  @param name      文件名

 *  @param leftScale 左边需要保护的比例(0~1)

 */

+ (UIImage *)resizedImage:(NSString *)name leftScale:(CGFloat)leftScale topScale:(CGFloat)topScale;

@end

 

 

//

//  UIImage+ZZ.m

//  ZZ_APP主流框架

//

//  Created by ZZ_Macpro on 15/9/25.

//  Copyright (c) 2015年 ZZ_Macpro. All rights reserved.

//

 

#import "UIImage+ZZ.h"

 

@implementation UIImage (ZZ)

 

+ (UIImage *)oringinalImageWithName:(NSString *)name

{

    if (iOS7) {

        return [[self imageWithName:name] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];

    } else {

        return [self imageWithName:name];

    }

}

 

+ (UIImage *)imageWithName:(NSString *)name

{

    if (iOS7) {

        NSString *newName = [name stringByAppendingString:@"_os7"];

        

        // 利用新的文件名加载图片

        UIImage *image = [self imageNamed:newName];

        // 不存在这张图片

        if (image == nil) {

            image = [self imageNamed:name];

        }

        return image;

    } else {

        return [self imageNamed:name];

    }

}

 

+ (UIImage *)resizedImageWithName:(NSString *)name

{

    return [self resizedImage:name leftScale:0.5 topScale:0.5];

}

 

+ (UIImage *)resizedImage:(NSString *)name leftScale:(CGFloat)leftScale topScale:(CGFloat)topScale

{

    UIImage *image = [self imageWithName:name];

    

    return [image stretchableImageWithLeftCapWidth:image.size.width * leftScale topCapHeight:image.size.height * topScale];

}

@end

 

 


http://www.niftyadmin.cn/n/541675.html

相关文章

关于PackageInfo、ApplicationInfo、ActivityInfo、ResolveInfo四种信息类的区别之我见

关于PackageInfo、ApplicationInfo、ActivityInfo、ResolveInfo四种信息类的区别之我见 2014年09月05日 ⁄ 综合 ⁄ 共 2871字 ⁄ 字号 小 中 大 ⁄ 评论关闭PackageInfo&#xff1a; 获得方法&#xff1a; [java] view plaincopy print?PackageManager packageManager conte…

学软件测试最好的几本书,这8本书能帮你很多

真的勇士&#xff0c; 敢于直面惨淡的 warning 、 敢于正视淋漓的 error !有人喜欢创造世界&#xff0c;他们做了开发者&#xff1b;有的人喜欢开发者&#xff0c;他们做了测试员。什么是软件测试&#xff1f;软件测试就是一场本该在用户面前发生的灾难提前在自己面前发生了&am…

理解js中的原型链,prototype与__proto__的关系

说到prototype&#xff0c;就不得不先说下new的过程。 我们先看看这样一段代码&#xff1a; <script type"text/javascript">var Person function () { };var p new Person();</script> 很简单的一段代码&#xff0c;我们来看看这个new究竟做了什么&am…

iOS开发-自定义UIBarButtonItem

// // UIBarButtonItemZZ.h // ZZ_APP主流框架 // // Created by ZZ_Macpro on 15/9/27. // Copyright (c) 2015年 ZZ_Macpro. All rights reserved. // #import <UIKit/UIKit.h> interface UIBarButtonItem (ZZ) /** * 快速创建一个item对象 (内部包装一个U…

MySQL mysqldump + mysqlbinlog 备份和还原

1.使用mysqlbinlog对二进制日志进行连续备份&#xff1a;mysqlbinlog -u root -p -R --hostlocalhost --raw --stop-never mysql_bin.000001 2.使用mysqldump创建转储文件作为服务器数据的快照&#xff0c;定期 执行mysqldump命令以根据需要创建更新的快照&#xff1a;mysqldum…

设置控制器,出现默认知道空隙

设置控制器&#xff0c;出现默认知道空隙 - (void)viewDidLoad { [super viewDidLoad]; self.automaticallyAdjustsScrollViewInsets NO; } 转载于:https://www.cnblogs.com/YangFuShun/p/5732900.html

iOS开发-自定义TabBarTabBarButton实现自动切换

// // ZZTabBarButton.h // ZZ_APP主流框架 // // Created by ZZ_Macpro on 15/9/25. // Copyright (c) 2015年 ZZ_Macpro. All rights reserved. // #import <UIKit/UIKit.h> interface ZZTabBarButton :UIButton /** * tabbar 上面的子控件只能是UITabBarI…

CF527E Data Center Drama(构造+欧拉回路)

题目链接 大意: 给你一个无向图。 要求加最少的边&#xff0c;然后给这些无向图的边定向,使得每一个点的出入度都是偶数。 输出定向后的边数和边集。 n<10^5 m<2*10^5 很巧妙的构造题…… 可以发现答案的下界是\(度数为奇数的点个数m 度数为奇数的点个数/2\) 因为是无向…