需求:
1、UIButton 的背景需要渐变色
2、UIButton 的边框需要渐变色,背景是白色,字体也需要渐变色

需求一 : UIButton 的背景需要渐变色:
思路:
我们可以利用 CAGradientLayer 来做渐变色
然而我不是直接套在UIButton 的layer 上面进行操作。
我是
1、 首先创建一个临时的 UIView
2、 然后利用 CAGradientLayerUIView 上面进行渐变绘制
3、将UIView 进行截图返回 UIImage
4、将返回的 UIImage 设置到 UIButtonsetBackgroundImage

这样就可以完成了一个UIButton 的渐变色 绘制,并且可以根据不用的颜色来设置Button UIControlStateNormal | UIControlStateHighlighted | UIControlStateDisabled 来进行设置效果。

需求二 :UIButton 的边框需要渐变色,背景是白色,字体也需要渐变色
其实 边框渐变色我们可以套用 上面的做法,只不过我们需要在已经绘制好有渐变色的UIView 上面盖多一个白色的 UIView 比 上面那个UIView 小一个像素 即可,
然后 字体的颜色 我使用了 + (UIColor *)colorWithPatternImage:(UIImage *)image 这个方法来来处理。然而传入的图片就是 上面得到的渐变色(或许根据UI 的色值来处理)

iOS UIButton 渐变色、边框渐变色、字体渐变色相关推荐

  1. 【css】字体渐变色,边框渐变色等笔记,按钮渐变色等持续更新~~

    一.字体渐变色 <h2 class="text-one">生活不会一成不变,即使变化来的如此慢,我还是一如既往热爱生活</h2> .text-one {fo ...

  2. CSS实现字体渐变色,边框渐变色

    CSS实现字体渐变色,边框渐变色 前言 字体实现渐变色 边框渐变色 最后 前言 前段时间有做过字体渐变色和边框渐变色的需求,再此整理一下,以供大家参考. 字体实现渐变色 background: lin ...

  3. 自定义TextView实现渐变色边框,渐变色文字并绘制drawable

    工作需求,渐变色的边框和文字,还需要显示drawable.我们知道如果是View的背景色渐变,那么很好办,只需要写一个drawable文件,里面定义shape然后设置为View的background就 ...

  4. css3实现0.5px边框、圆角渐变色边框+圆角渐变色背景

    效果图 0.5px边框 0.5px边框,可以用伪元素实现,before.after都可以.移动端H5页面用的比较多. 圆角渐变色边框+圆角渐变色背景 实现外部圆角边框,内部圆角渐变色背景,是用父div ...

  5. css实现渐变色边框动态旋转

    场景:实现渐变色边框旋转 思路是:利用渐变色的背景旋转动画来实现边框旋转 代码如下: <body><!-- 最外层仅起到限制渐变区域大小的作用 --><div class ...

  6. 利用CSS实现渐变色边框

    通过CSS实现渐变色边框的几种方法: 一.用border-image 来实现: CSS代码如下: .box {width: 200px ;height: 200px ;border: 10px sol ...

  7. CSS 之 渐变色边框

    一.渐变色边框 如果我们前端最亲爱的UI设计师,让我们给盒子绘制一个渐变色的边框,而且盒子的宽高还需要随着内容变化而变化,那我们就不能通过切图来解决问题,所以我们可以这么说: 但是我相信优秀的你肯定不 ...

  8. 用css实现鼠标移入按钮,按钮出现动态的渐变色边框效果

    用css实现边框的动态渐变色效果,希望对各位能有一些帮助. 边框.html <!DOCTYPE html> <html lang="en"><head ...

  9. css渐变色边框的实现的方法

    在项目中,边框的样式多种多样,一种常见的渐变色边框出现:而这种渐变色的边框又结合各种各样的设计,这里结果实现的效果与浏览器的兼容性总结渐变色的实现方法: 圆角的渐变边框border-image 点击进 ...

最新文章

  1. ML:教你聚类并构建学习模型处理数据(附数据集)
  2. Unity插件-NGUI使用教程
  3. 厚积薄发,丰富的公用类库积累,助你高效进行系统开发(11)---各种线程相关操作类...
  4. Facebook热门应用被曝向第三方提供用户信息
  5. mySQL | unrecognized service 错误解决办法
  6. Windows 下安装 MySQL 及使用可视化工具执行 SQL 脚本过程记录
  7. Python 爬虫之初体验(实习僧)
  8. mysql单数据库多硬盘配置_MySQL 使用mysqld_multi部署单机多实例详细过程
  9. Candence学习篇(4)allegro软件中class 和subclass的概念
  10. GTD时间管理-节假日时间安排 | 每天成就更大成功
  11. 内网漫游(lateral movement)的破解之道
  12. KittenCode编程平台
  13. 专为mac用户设计的苹果手机助手。爱思助手 Mac版结构更清晰,功能更好用,界面更清晰,让你能够轻松查看设备信息,下载最新最火的应用游戏。
  14. 老旧小区为什么要进行安防升级改造
  15. Java BMI计算程序
  16. The number of GET/POST parameters exceeded settings.DATA_UPLOAD_MAX_NUMBER_FIELDS. ERROR:django.secu
  17. Unity 3D中的射线与碰撞检测 1
  18. html静态页面作业——京东网购商城模板(8页) HTML+CSS+JavaScript 学生DW网页设计作业成品 HTML网页设计制作大作业
  19. JAVA实现图片缩放反转
  20. 成绩登记与查询系统App

热门文章

  1. RAD Studio C++ Builder10.4 补丁Patch 2仍然没有彻底解决C ++ Android异常处理错误
  2. PowerBI 操作
  3. 网络对抗技术——网络嗅探与欺骗(第三部分)
  4. 【Linux】Linux编程基础(vi、gcc、gdb)
  5. 并发底层原理:线程、资源共享、volatile 关键字
  6. CF 617E 莫队
  7. C语言float是什么类型,float是什么数据类型?
  8. 使用css和js实现鼠标拖尾特效(七彩泡泡)
  9. SAP官网学习教程(2)创建HANA数据库
  10. NV040C语音单片机芯片,节省MCU开发成本,在电取暖桌上的应用!