//绘制背景渐变

/*CGCradientCreateWithColorComponents函数需要四个参数:

色彩空间:(Color Space)这是一个色彩范围的容器,类型必须是CGColorSpaceRef.对于这个参数,我们可以传入CGColorSpaceCreateDeviceRGB函数的返回值,它将给我们一个RGB色彩空间。

颜色分量的数组:这个数组必须包含CGFloat类型的红、绿、蓝和alpha值。数组中元素的数量和接下来两个参数密切。从本质来讲,你必须让这个数组包含足够的值,用来指定第四个参数中位置的数量。所以如果你需要两个位置位置(起点和终点),那么你必须为数组提供两种颜色

位置数组,颜色数组中各个颜色的位置:此参数控制该渐变从一种颜色过渡到另一种颜色的速度有多快。

位置的数量:这个参数指明了我们需要多少颜色和位置。*/CGColorSpaceRef rgb=CGColorSpaceCreateDeviceRGB();

CGFloat colors[]={51.0 / 255.0, 160.0 / 255.0, 0.0 / 255.0, 1.00,68.0 / 255.0, 198.0 / 255.0, 0.0 / 255.0, 1.00,//0.0 / 255.0, 50.0 / 255.0, 126.0 / 255.0, 1.00,

};

CGGradientRef myGradient=CGGradientCreateWithColorComponents

(rgb, colors, NULL,sizeof(colors)/(sizeof(colors[0])*4));//Allocate bitmap context

CGContextRef bitmapContext= CGBitmapContextCreate(NULL, 320, TITLE_CONTROL_HEIGHT, 8, 4 * 320, CGColorSpaceCreateDeviceRGB(), kCGImageAlphaNoneSkipFirst);//Draw Gradient Here

/*创建好线性渐变后,我们将使用CGContextDrawLinearGradient过程在图形上下文中绘制,此过程需要五个参数:

Graphics context 指定用于绘制线性渐变的图形上下文。

Axial gradient 我们使用CGGradientCreateWithColorComponents函数创建的线性渐变对象的句柄

start point 图形上下文中的一个CGPoint类型的点,表示渐变的起点。

End Point表示渐变的终点。

Gradient drawing options 当你的起点或者终点不在图形上下文的边缘内时,指定该如何处理。你可以使用你的开始或结束颜色来填充渐变以外的空间。此参数为以下值之一:KCGGradientDrawsAfterEndLocation扩展整个渐变到渐变的终点之后的所有点 KCGGradientDrawsBeforeStartLocation扩展整个渐变到渐变的起点之前的所有点。0不扩展该渐变。*/CGContextDrawLinearGradient(bitmapContext, myGradient, CGPointMake(160.0f, 0.0f),CGPointMake(160.0f, TITLE_CONTROL_HEIGHT), kCGGradientDrawsBeforeStartLocation);//Create a CGImage from context

CGImageRef cgImage=CGBitmapContextCreateImage(bitmapContext);//Create a UIImage from CGImage

UIImage*uiImage =[UIImage imageWithCGImage:cgImage];//Release the CGImage

CGImageRelease(cgImage);//Release the bitmap context

CGContextRelease(bitmapContext);//Create the patterned UIColor and set as background color

[titleScrollViewsetBackgroundColor:[UIColorcolorWithPatternImage:uiImage]];

uiview 渐变_UIView的背景渐变相关推荐

  1. uiview 渐变_UIView的背景渐变色~~~

    把UIView的背景色设置为渐变色,虽然找一张渐变的背景图很方便,但是图片是要占用资源的,所以我们最好使用代码来实现效果. 直接上代码,这是我自己写的一个分类中的加渐变色的方法 - (void)set ...

  2. css背景渐变的技巧与方法

    [发帖际遇]: the_truth玩宠物的时候不幸损失威望13. css背景渐变的技巧与方法 用css实现网页背景渐变的代码如下: 一.从上往下渐变 Example Source Code: body ...

  3. VTK:背景渐变BackgroundGradient用法实战

    VTK:背景渐变BackgroundGradient用法实战 程序输出 程序完整源代码 程序输出 程序完整源代码 #include <vtkActor.h> #include <vt ...

  4. Css3: gradient背景渐变

    Css3: gradient背景渐变 原文链接:http://kk073000.blog.163.com/blog/static/34826942012123111322691/ css3实现了背景渐 ...

  5. HTML中button怎么填充GIF,css3给按钮添加背景渐变动画

    css3给按钮添加背景渐变动画 button { color:#FFF; font-size:16px; outline:none; width:300px; height:48px; backgro ...

  6. css3实现背景渐变的方法

    我们一般实现背景渐变的方法都是用图片来实现,这段时间在做项目中找到了一种用css3用颜色实现背景渐变的方法,主要支持Firefox和Safari/Chrome 等浏览器,ie用滤镜的方法来解决渐变的问 ...

  7. CSS3j背景渐变,字体颜色渐变,以及兼容IE写法

    一.背景渐变 #grad { background: linear-gradient(red, blue); } 渐变路径默认是从上到下,也可以指定路径: 从左到右 #grad { backgroun ...

  8. Tesseract处理背景渐变的图片

    在Tesseract处理背景渐变图片不太理想的情况下, 可以利用Pillow库, 创建一个阈值过滤器来去掉渐变的背景色, 只把文字留下来, 从而让图片更清晰, 便于Tesseract读取: 1 fro ...

  9. HTML背景渐变圆圈,背景渐变:html5+css3中的background: -moz-linear-gradient 用

    在CSS中background: -moz-linear-gradient 让网站背景渐变的属性,目前火狐3.6以上版本和google浏览器支持这个属性. 背景使用CSS渐变显示可以不使用图像就实现两 ...

最新文章

  1. 取代Python?Rust凭什么
  2. 数据库基础笔记(MySQL)2 —— 基础查询
  3. 腾讯这家公司的核心竞争力是什么?为什么?
  4. 【Clickhouse】rsyslog服务器使用clickhouse列数据库存储日志
  5. Win docker 桌面版报错error during connect: This error may indicate that the docker daemon is not running
  6. Html图片懒加载动画,Intersection Observer实现滚动到相应区域执行动画及图片懒加载...
  7. VC 开机自动启动程序 方法
  8. python 线程同步_Python 线程同步
  9. 编码规范 | Java函数优雅之道(下)
  10. Two-Stream RNN/CNN for Action Recognition in 3D Videos-阅读笔记
  11. imx6q 开发android,SAIL-IMX6Q ANDROID开发环境搭建与系统编译
  12. mysql binlog 多少_今天才知道,MySQL 的 binlog 编号可以这么大!
  13. Flutter游戏:蚊子飞来飞去
  14. Qt 远程开关机 WakeOnLAN 编辑MagicPacket
  15. Vscode运行Demo程序出现错误
  16. Windows 32位程序内存扩展
  17. 交叉连接(笛卡尔积)
  18. 离散数学复习笔记——命题逻辑——命题
  19. 单元测试和E2E测试
  20. 博主文章导航(分门别类,实时更新,永久置顶)

热门文章

  1. 220609_Efficient Uncertainty-aware Decision-making for Automated Driving Using Guided Branching
  2. Mac OS QQ的截屏快捷键设置
  3. javascript百炼成仙 第一章 掌握JavaScript基础01 初入宗门
  4. 将手机3.5mm耳机作为电脑麦克风
  5. 插入u盘计算机未响应,U盘插入win7电脑没反应如何解决 Win7插入U盘没反应怎么办...
  6. O2O常见的结算模式是什么 O2O线上线下营销策略有哪些?
  7. 2021年小米校招java编程题
  8. 计算机软件侵害,如何认定侵害计算机软件著作权?
  9. Stronger Data Poisoning Attacks Break Data Sanitization Defenses
  10. VOS中客户在设置服务器防火墙时需要打开哪些 VOS 应用端口