iOS图片实现可拉伸不变形的处理操作

 更新时间:2016年05月25日 10:53:04   作者:xiaojinwy   我要评论

这篇文章主要为大家详细介绍了iOS图片实现可拉伸不变形的处理操作,通过UIImage对象调用该方法,并且传入要拉伸的图片的名字作为参数,实现返回一个可拉伸不变形的图片,感兴趣的小伙伴们可以参考一下

在iOS的实际开发中,如果我们把一张有图片(有特别形状的,特别是类似有圆角的图片)放在UIButton中,当UIButton改变大小是,图片可能会被拉伸并且产生变形,我们可以通过-(UIImage *)resizableImageWithCapInsets:resizingMode:方法(通过UIImage对象调用该方法,并且传入要拉伸的图片的名字作为参数)实现返回一个可拉伸不变形的图片,这里我们把这个方法写到UIImage类的分类中把它封装起来,日后的iOS开发中我们可以直接拿来使用:

UIImage+Extension.h

#import <UIKit/UIKit.h>

@interface UIImage (Extension)
/**
 * 传入图片的名称,返回一张可拉伸不变形的图片
 *
 * @param imageName 图片名称
 *
 * @return 可拉伸图片
 */
+ (UIImage *)resizableImageWithName:(NSString *)imageName;
@end

UIImage+Extension.m

#import "UIImage+Extension.h"

@implementation UIImage (Extension)

+ (UIImage *)resizableImageWithName:(NSString *)imageName
{

  // 加载原有图片
  UIImage *norImage = [UIImage imageNamed:imageName];
  // 获取原有图片的宽高的一半
  CGFloat w = norImage.size.width * 0.5;
  CGFloat h = norImage.size.height * 0.5;
  // 生成可以拉伸指定位置的图片
  UIImage *newImage = [norImage resizableImageWithCapInsets:UIEdgeInsetsMake(h, w, h, w) resizingMode:UIImageResizingModeStretch];

  return newImage;
}
@end

以上就是本文的全部内容,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • IOS中UITableView滚动到指定位置

    IOS中UITableView滚动到指定位置

    这篇文章主要介绍了IOS中UITableView滚动到指定位置的实现方法,本文介绍的非常详细,具有参考借鉴价值,需要的朋友可以参考下
    2016-09-09
  • 老生常谈iOS应用程序生命周期

    老生常谈iOS应用程序生命周期

    下面小编就为大家带来一篇老生常谈iOS应用程序生命周期。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • iOS使用Charts框架绘制饼状图

    iOS使用Charts框架绘制饼状图

    本文主要介绍了iOS使用Charts框架绘制饼状图的方法,具有一定的参考价值,下面跟着小编一起来看下吧
    2016-12-12
  • 关于iOS获取属性你真的了解吗?

    关于iOS获取属性你真的了解吗?

    这篇文章主要给大家介绍了关于iOS取属性的相关资料,当说到取属性,相信很多的iOS开发者们会说出很多,但你就真的理解吗?下面就来详细,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-12-12
  • NSString属性何时用strong何时用copy?

    NSString属性何时用strong何时用copy?

    相信各位iOS开发者们都考虑过这个问题,平时写NSString的属性时都用copy,那strong要何时用呢?下面这篇文章就来看一下什么时候应该用copy,什么时候应该用strong。有需要的朋友们可以参考借鉴,下面来一起看看吧。
    2016-12-12
  • ios通过按钮点击异步加载图片

    ios通过按钮点击异步加载图片

    本文给大家汇总了几种IOS中实现异步加载图片的方法,十分的简单实用,有需要的小伙伴可以参考下。
    2015-05-05
  • iOS 多线程总结之GCD的使用详解

    iOS 多线程总结之GCD的使用详解

    本篇文章主要介绍了iOS 多线程总结之GCD的使用详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-10-10
  • IOS提醒用户重新授权打开定位功能

    IOS提醒用户重新授权打开定位功能

    这篇文章主要介绍了IOS提醒用户重新授权打开定位功能的相关资料,需要的朋友可以参考下
    2015-12-12
  • iOS如何裁剪圆形头像

    iOS如何裁剪圆形头像

    这篇文章主要介绍了iOS如何裁剪圆形头像的方法,如何为圆形头像加边框,如何进行截图操作,感兴趣的小伙伴们可以参考一下
    2016-04-04
  • iOS给图片添加滤镜&使用openGLES动态渲染图片详解及实例

    iOS给图片添加滤镜&使用openGLES动态渲染图片详解及实例

    这篇文章主要介绍了iOS给图片添加滤镜&使用openGLES动态渲染图片详解及实例的相关资料,需要的朋友可以参考下
    2016-10-10

最新评论