经常使用Storyboard的童鞋们应该比较清楚怎样设置一个View在runtime中的属性,比方说layer.cornerRadiuslayer.borderWidth等。基本上大多数属性都能直接在Keypath中进行设置,除了颜色相关的属性。

办法总是有的,有的童鞋会向恶势力低头,使用代码。

但是,除了使用代码以外,我们可以对UIView或者CALayer进行扩展,这是我从SO上找到的答案,通过extension为UIView或者CALayer添加一个UIColor类型的属性,然后在keypath中设置该属性即可。

UIView版:

// 除了设置color以外,还设置了其他几个属性,就避免keypath要写长
extension UIView { @IBInspectable var cornerRadius: CGFloat { get { return layer.cornerRadius } set { layer.cornerRadius = newValue layer.masksToBounds = newValue > 0 }
} @IBInspectable var borderWidth: CGFloat { get { return layer.borderWidth } set { layer.borderWidth = newValue }
} @IBInspectable var borderColor: UIColor? { get { return UIColor(cgColor: layer.borderColor!) }set { layer.borderColor = newValue?.cgColor } }
}
复制代码

CALayer版:

extension CALayer { var borderColorFromUIColor: UIColor { get { return UIColor(CGColor: self.borderColor!) } set { self.borderColor = newValue.CGColor } }
}
复制代码

参考链接:

  1. Change UIButton BorderColor in Storyboard

转载于:https://juejin.im/post/5a30e1c56fb9a0450a675695

在Storyboard中设置borderColor相关推荐

  1. iosxib 设置图片_iOS从Xib中设置样式

    简介 iOS在写视图的有的人喜欢纯代码去写,从之前的绝对定位方式(Frame),到现在的自动布局(Autolayout),但这种方式的好处是便于复制修改和装X,但是缺点是代码不容易看,不便于修改 也有 ...

  2. 如何在Storyboard中使用Scroll view

    本文章环境Xcode 11 在开始使用scroll view之前(storyboard/XIB),我们必须搞清楚两个东西 在Storybord/Xib中使用Scroll view,会有哪些结构 为什么 ...

  3. iOS8开发~UI布局(二)storyboard中autolayout和size class的使用详解

    一.概要:前一篇初步的描述了size class的概念,那么实际中如何使用呢,下面两个问题是我们一定会遇到的: 1.Xcode6中增加了size class,在storyboard中如何使用? 2.a ...

  4. iOS开发~UI布局(二)storyboard中autolayout和size class的使用详解

    一.概要:前一篇初步的描述了size class的概念,那么实际中如何使用呢,下面两个问题是我们一定会遇到的: 1.Xcode6中增加了size class,在storyboard中如何使用? 2.a ...

  5. 【我们都爱Paul Hegarty】斯坦福IOS8公开课个人笔记15 storyboard中的绘图 MVC模式

    上一话中我们实现了对一个小人表情的绘制,但是我们需要修改代码才能实现表情的变换,而且我们也没有一个明确地模型,这很明显不符合MVC的要求,这一话中我们将要修改它已符合MVC的要求. 在上一话中我们已经 ...

  6. iPhone App创建与审核步骤二:如何在developer.apple.com网站中设置App预览和截屏以完成App上架

    iPhone App创建与审核步骤二:如何在developer.apple.com网站中设置App预览和截屏以完成App上架,根据图标规范RAD Studio 10.4 for delphi XE 或 ...

  7. css可以设置文本框颜色吗,如何在css中设置文本框颜色

    如何在css中设置文本框颜色 发布时间:2021-04-29 15:33:54 来源:亿速云 阅读:72 作者:Leah 如何在css中设置文本框颜色?针对这个问题,这篇文章详细介绍了相对应的分析和解 ...

  8. 关于LaunchScreen.storyboard启动设置(包含不同设备适配)

    消除警告 1.warning: Launch images are deprecated in iOS 13.0. Use a launch storyboard or XIB instead. 2. ...

  9. 在html中设置按钮字体颜色,html中按钮颜色怎么设置

    在html中,可以通过在button按钮元素使用style属性,添加"background-color:颜色值;"样式来设置按钮的背景颜色,添加"color:颜色值;&q ...

  10. 在Dockerfile中设置G1垃圾回收器参数

    在Dockerfile中设置G1垃圾回收器参数 ENV JAVA_OPTS="\ -server \ -XX:SurvivorRatio=8 \ -XX:+DisableExplicitGC ...

最新文章

  1. 《数据科学家养成手册》傅里叶变换与反傅里叶变换笔记
  2. P3项目轶事之一票否决的新员工培训
  3. Autodesk Maya 2019中文版
  4. 在Azure Container Service创建Kubernetes(k8s)群集运行ASP.NET Core跨平台应用程序
  5. 虚拟机安装spark配置推荐
  6. 2021中国集成电路行业投资市场研究报告
  7. netsh 禁用端口
  8. mysql下删改增语句_MySQL增删改查
  9. C++算法学习(力扣:1269. 停在原地的方案数)
  10. 使用cocoapods install友盟时报错Error installing UMengAnalytics
  11. 常见脱壳与反编译工具
  12. CAD中怎么批量标注坐标?CAD批量标注坐标​
  13. MongoDB 清理数据
  14. 斗智斗勇 -- 谷歌浏览器的主页被篡改
  15. 100+篇论文合集:GNN在NLP中的应用
  16. 2021年春季PAT乙级题解(C语言)
  17. 服务器端口是什么?在网络技术中,端口(Port)大致有两种意思:一是物理意义上的端口,比如,ADSL Modem、集线器、交换机、路由器用于连接其他网络设备的接口,如RJ-45端口、SC端口等等。二是
  18. hdu 5145 NPY and girls (莫队算法)
  19. 隐马尔可夫(HMM)、前/后向算法、Viterbi算法 再次总结
  20. Git安装(傻瓜版)

热门文章

  1. 5个提供flickr高级图片搜索的网站
  2. 随机森林——股票涨跌预测模型搭建
  3. MySQL 中的定时任务
  4. 除了框架,前端面试还问什么
  5. flutter版本升级
  6. 2022年茶艺师(初级)上岗证题库及在线模拟考试
  7. 【教学类-20-02】20221203《世界杯16强国旗-定量版》(大班)
  8. 中国诺贝尔物理学奖所有获得者名单(转)
  9. 《逐梦旅程 WINDOWS游戏编程之从零开始》笔记6——四大变换光照与材质
  10. 二、 分式化简(LCP2)