uiview 渐变_UIView的背景渐变
//绘制背景渐变
/*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的背景渐变相关推荐
- uiview 渐变_UIView的背景渐变色~~~
把UIView的背景色设置为渐变色,虽然找一张渐变的背景图很方便,但是图片是要占用资源的,所以我们最好使用代码来实现效果. 直接上代码,这是我自己写的一个分类中的加渐变色的方法 - (void)set ...
- css背景渐变的技巧与方法
[发帖际遇]: the_truth玩宠物的时候不幸损失威望13. css背景渐变的技巧与方法 用css实现网页背景渐变的代码如下: 一.从上往下渐变 Example Source Code: body ...
- VTK:背景渐变BackgroundGradient用法实战
VTK:背景渐变BackgroundGradient用法实战 程序输出 程序完整源代码 程序输出 程序完整源代码 #include <vtkActor.h> #include <vt ...
- Css3: gradient背景渐变
Css3: gradient背景渐变 原文链接:http://kk073000.blog.163.com/blog/static/34826942012123111322691/ css3实现了背景渐 ...
- HTML中button怎么填充GIF,css3给按钮添加背景渐变动画
css3给按钮添加背景渐变动画 button { color:#FFF; font-size:16px; outline:none; width:300px; height:48px; backgro ...
- css3实现背景渐变的方法
我们一般实现背景渐变的方法都是用图片来实现,这段时间在做项目中找到了一种用css3用颜色实现背景渐变的方法,主要支持Firefox和Safari/Chrome 等浏览器,ie用滤镜的方法来解决渐变的问 ...
- CSS3j背景渐变,字体颜色渐变,以及兼容IE写法
一.背景渐变 #grad { background: linear-gradient(red, blue); } 渐变路径默认是从上到下,也可以指定路径: 从左到右 #grad { backgroun ...
- Tesseract处理背景渐变的图片
在Tesseract处理背景渐变图片不太理想的情况下, 可以利用Pillow库, 创建一个阈值过滤器来去掉渐变的背景色, 只把文字留下来, 从而让图片更清晰, 便于Tesseract读取: 1 fro ...
- HTML背景渐变圆圈,背景渐变:html5+css3中的background: -moz-linear-gradient 用
在CSS中background: -moz-linear-gradient 让网站背景渐变的属性,目前火狐3.6以上版本和google浏览器支持这个属性. 背景使用CSS渐变显示可以不使用图像就实现两 ...
最新文章
- 取代Python?Rust凭什么
- 数据库基础笔记(MySQL)2 —— 基础查询
- 腾讯这家公司的核心竞争力是什么?为什么?
- 【Clickhouse】rsyslog服务器使用clickhouse列数据库存储日志
- Win docker 桌面版报错error during connect: This error may indicate that the docker daemon is not running
- Html图片懒加载动画,Intersection Observer实现滚动到相应区域执行动画及图片懒加载...
- VC 开机自动启动程序 方法
- python 线程同步_Python 线程同步
- 编码规范 | Java函数优雅之道(下)
- Two-Stream RNN/CNN for Action Recognition in 3D Videos-阅读笔记
- imx6q 开发android,SAIL-IMX6Q ANDROID开发环境搭建与系统编译
- mysql binlog 多少_今天才知道,MySQL 的 binlog 编号可以这么大!
- Flutter游戏:蚊子飞来飞去
- Qt 远程开关机 WakeOnLAN 编辑MagicPacket
- Vscode运行Demo程序出现错误
- Windows 32位程序内存扩展
- 交叉连接(笛卡尔积)
- 离散数学复习笔记——命题逻辑——命题
- 单元测试和E2E测试
- 博主文章导航(分门别类,实时更新,永久置顶)
热门文章
- 220609_Efficient Uncertainty-aware Decision-making for Automated Driving Using Guided Branching
- Mac OS QQ的截屏快捷键设置
- javascript百炼成仙 第一章 掌握JavaScript基础01 初入宗门
- 将手机3.5mm耳机作为电脑麦克风
- 插入u盘计算机未响应,U盘插入win7电脑没反应如何解决 Win7插入U盘没反应怎么办...
- O2O常见的结算模式是什么 O2O线上线下营销策略有哪些?
- 2021年小米校招java编程题
- 计算机软件侵害,如何认定侵害计算机软件著作权?
- Stronger Data Poisoning Attacks Break Data Sanitization Defenses
- VOS中客户在设置服务器防火墙时需要打开哪些 VOS 应用端口