zoukankan      html  css  js  c++  java
  • UIButton图片拉伸方法(很多需要按钮的地方我们只需要一张小图来进行缩放)

    系统提供3种方法来满足不同的需求(直接上代码):


    #import <UIKit/UIKit.h>
    
    @interface UIImage (Common)
    
    /**
     *  根据图片名返回一张能自由拉伸的图片(图片缩放)
     */
    + (UIImage *)resizedImage:(NSString *)name;
    
    /**
     *iOS5提供的方法
     */
    +(UIImage*)resizeImageWithIOS5Method:(NSString*)imageName;
    
    /**
     *iOS6提供的方法,从中间开始缩放
     */
    +(UIImage*)resizeImageWithIOS6Method:(NSString*)name;
    
    @end

    .m的的实现方法:

    #import "UIImage+Common.h"
    
    @implementation UIImage (Common)
    
    + (UIImage *)resizedImage:(NSString *)name
    {
        UIImage *image = [UIImage imageNamed:name];
        return [image stretchableImageWithLeftCapWidth:image.size.width * 0.5 topCapHeight:image.size.height * 0.5];
    }
    
    /**
     *iOS5提供的方法
     */
    +(UIImage*)resizeImageWithIOS5Method:(NSString*)imageName{
        UIImage *image = [UIImage imageNamed:imageName];
        //顶端盖的高度
        CGFloat top = 25;
        CGFloat bottom = 25;//低端盖的高度
        CGFloat left = 10;//左端盖的高度
        CGFloat right = 10;//右端盖的高度
        UIEdgeInsets insets = UIEdgeInsetsMake(top, left, bottom, right);
        //伸缩后重新赋值
        return [image resizableImageWithCapInsets:insets];
    }
    
    /**
     *iOS6提供的方法
     *@param  UIImageResizingModeStretch:拉伸模式,通过拉伸UIEdgeInsets指定的矩形区域来填充图片
     *@param  UIImageResizingModeTile:平铺模式,通过重复显示UIEdgeInsets指定的矩形区域来填充图片
     */
    +(UIImage*)resizeImageWithIOS6Method:(NSString*)name{
        UIImage *image = [UIImage imageNamed:name];
        //顶端盖的高度
        CGFloat top = 10;
        CGFloat bottom = 10;//低端盖的高度
        CGFloat left = 10;//左端盖的高度
        CGFloat right = 10;//右端盖的高度
        UIEdgeInsets insets = UIEdgeInsetsMake(top, left, bottom, right);
        //指定为拉伸模式,伸缩后重新赋值
        return [image resizableImageWithCapInsets:insets resizingMode:UIImageResizingModeStretch];
    }
  • 相关阅读:
    StringRedisTemplate和RedisTemplate的区别及使用方法
    https jwt.io 测试
    java.sql.SQLException Parameter index out of range (0 1 ).
    yml 错误: 层级、缩进不对引起的问题
    xml文件中存在自定义控件导致无法预览的解决方法
    凸优化从入门到放弃(目录)
    PyTorch从入门到放弃(目录)
    小样本学习以及元学习基础学习路线
    08-ADMM算法
    07-内点法(不等式约束优化算法)
  • 原文地址:https://www.cnblogs.com/Crazy-ZY/p/5622619.html
Copyright © 2011-2022 走看看