淘宝电商类图片渐变设置

.h文件

typedef NS_ENUM(NSUInteger, GradientType) {GradientTypeTopToBottom = 0,//从上到下GradientTypeLeftToRight = 1,//从左到右GradientTypeUpleftToLowright = 2,//左上到右下GradientTypeUprightToLowleft = 3,//右上到左下 };/**  设置图片的渐变色(颜色->图片)@param colors 渐变颜色数组  @param gradientType 渐变样式  @param imgSize 图片大小  @return 颜色->图片  */
+ (UIImage *)gradientColorImageFromColors:(NSArray*)colors gradientType:(GradientType)gradientType imgSize:(CGSize)imgSize;

.m文件

+ (UIImage *)gradientColorImageFromColors:(NSArray*)colors gradientType:(GradientType)gradientType imgSize:(CGSize)imgSize {NSMutableArray *ar = [NSMutableArray array];for(UIColor *c in colors) {[ar addObject:(id)c.CGColor];}UIGraphicsBeginImageContextWithOptions(imgSize, YES, 1);CGContextRef context = UIGraphicsGetCurrentContext();CGContextSaveGState(context);CGColorSpaceRef colorSpace = CGColorGetColorSpace([[colors lastObject] CGColor]);CGGradientRef gradient = CGGradientCreateWithColors(colorSpace, (CFArrayRef)ar, NULL);CGPoint start;CGPoint end;switch (gradientType) {case GradientTypeTopToBottom:start = CGPointMake(0.0, 0.0);end = CGPointMake(0.0, imgSize.height);break;case GradientTypeLeftToRight:start = CGPointMake(0.0, 0.0);end = CGPointMake(imgSize.width, 0.0);break;case GradientTypeUpleftToLowright:start = CGPointMake(0.0, 0.0);end = CGPointMake(imgSize.width, imgSize.height);break;case GradientTypeUprightToLowleft:start = CGPointMake(imgSize.width, 0.0);end = CGPointMake(0.0, imgSize.height);break;default:break;}CGContextDrawLinearGradient(context, gradient, start, end,kCGGradientDrawsBeforeStartLocation | kCGGradientDrawsAfterEndLocation);UIImage *image = UIGraphicsGetImageFromCurrentImageContext();CGGradientRelease(gradient);CGContextRestoreGState(context);CGColorSpaceRelease(colorSpace);UIGraphicsEndImageContext();return image;
}

引用
#import “UIImage+Category.h”

UIImage *bgImg = [UIImage gradientColorImageFromColors:@[kColor56B825,kColorB4EC51] gradientType:GradientTypeTopToBottom imgSize:CGSizeMake(ScreenW, HGADPT(200))];

iOS-设置图片渐变色相关推荐

  1. IOS设置导航栏的背景图片和文字

    IOS设置导航栏的背景图片和文字 - (void)viewDidLoad {[super viewDidLoad];[self.navigationBar setBackgroundImage:[UI ...

  2. IOS启程06—iOS设置圆角图片

    iOS设置圆角的三种方式 1 方法一 通过设置layer的属性 UIImageView *imageView = [[UIImageView alloc]initWithFrame:CGRectMak ...

  3. iOS 按钮图片和文字位置的各种设置(Swift代码)

    效果如下图: 1.在UIButton的扩展中添加方法 /* 枚举 设置 图片的位置 */ enum ButtonImagePosition : Int {case imageTop = 0case i ...

  4. ios html5图片适配,ios UIWebView加载HTMLStr图文,关于图片宽高设置,webView内容实际高度的踩坑问题...

    一.关于UIWebView 与 WKWebView 选取问题 从发布时间看:javascript 2008年7月11日,在新一代iPhone3G正式发售当天,iPhone OS 2.0(iOS 2.0 ...

  5. 【深入浅出IOS开发】设置图片水印

    设置图片水印的本质就是将两张图片混合成一个图片. 可以通过以下步骤来进行设置: ①创建一个基于位图的上下文(开启一个基于位图的上下文) void UIGraphicsBeginImageContext ...

  6. Qt for ios 设置程序图标(logo)和启动页(splash)

    前言 Qt开发ios程序,要面临的一个问题就是设置程序图标和启动页的问题,作为一个跨平台开发者,对原生开发本身就不太熟悉,即便是这种小功能也可能会成为阻碍,没办法, 只能硬着头皮上咯. 要设置ios的 ...

  7. IOS gif图片播放 swift

    IOS gif图片播放 swift 1. GIF在iOS平台上的几种加载方式 2. 第三方开源框架播放GIF 1. SDWebImage播放: 2. Kingfisher播放: 3. 自己实现加载GI ...

  8. iOS 各种图片大小

    一.应用图片 标准iOS控件里的图片资源,苹果已经做了相应的升级,我们需要操心的是应用自己的图片资源.就像当初为了支持iPhone 4而制作的@2x高分辨率版本(译者:以下简称高分)图片一样,我们要为 ...

  9. ios 系统状态栏样式修改_超简单!!! iOS设置状态栏、导航栏按钮、标题、颜色、透明度,偏移等...

    原标题:超简单!!! iOS设置状态栏.导航栏按钮.标题.颜色.透明度,偏移等 1. 要实现以下这些效果都非常简单 2. 废话不多说,先看看实现效果 3. 下面告诉你我为什么说实现这些效果非常简单 比 ...

最新文章

  1. Xamarin.iOS提供没有匹配的配置文件
  2. python socket select 错误 Filedescriptor out of range in select 解决方法
  3. python3 redis_python3_redis随手学习笔记
  4. SAP系统配置常用命令大全
  5. 6.Excel项目排期表
  6. 有一句说一千句,是作家....
  7. 利用矩阵的n次方求图的连通性
  8. ds18b20触摸没反应_DS18B20温度偏差大、温度乱跳动原因及解决办法
  9. 为什么iPad-WIFI版无3G模块也可以准确定位?
  10. 【转】oracle内置函数 trunc 使用
  11. 远端异步调用事件结果
  12. pip下载安装包默认位置_修改pip 下载模块或软件的默认文件夹
  13. AI头发笔刷_笔刷不够用?给你送1000款~快来拿走
  14. h5 bootstrap 小程序模板_教你获取小程序码或小程序H5页面路径
  15. ENSP简单建立直连路由线路
  16. ASP.NET Core 中文文档 第四章 MVC(3.7 )局部视图(partial)
  17. Android.mk 包含问题带来的so.toc needed by 错误
  18. 关于WPF中平移缩放问题的解决
  19. 使用sklearn库进行数据标准化处理
  20. PIR热释电红外人体感应IC

热门文章

  1. 让Web项目中Velocity的#parse支持相对路径
  2. 拓嘉辰丰电商:拼多多关了店铺多久再次开
  3. 【计组笔记03】计算机组成原理之系统五大部件介绍、主存模型和CPU结构介绍
  4. matlab 三维全息谱,基于MATLAB软件平台的全息谱图及在风机振动故障诊断中应用的研究...
  5. SCP指令错误解决方法
  6. 125w短波通信距离_短波车载通信近距离盲区的解决途径
  7. 编写并运行php程序,上传所编写的PHP程序代码,并上传运行后的效果截图
  8. python将excel数据导入ppt_使用python将excel数据导入数据库
  9. 并查集(合并,查询)
  10. 算法设计与分析-迭代法-穿越沙漠问题