ios – UIButton用户定义的运行时属性不起作用

ios – UIButton用户定义的运行时属性不起作用,第1张

概述我试图在自定义UIButton周围绘制边框. 这不起作用: 为什么? click here to solve the problem 请允许我在这里重复一遍.. ^ _ ^ 运行属性功能允许我们设置UIColor类型,我们需要将其转换为CGColor类型.为了实现这一点,我们需要使用一个属性扩展CALayer类,该属性将UIColor转换为边框和阴影所需的CGColor. 您可以使用类别扩展Ob 我试图在自定义UIbutton周围绘制边框.
这不起作用:

为什么?

解决方法 click here to solve the problem

请允许我在这里重复一遍.. ^ _ ^

运行时属性功能允许我们设置UIcolor类型,我们需要将其转换为CGcolor类型.为了实现这一点,我们需要使用一个属性扩展CALayer类,该属性将UIcolor转换为边框和阴影所需的CGcolor.

您可以使用类别扩展Objective-C中的类.我添加了两个名为borderIBcolor和shadowIBcolor的属性,类型为UIcolor. IB代表界面构建器.我必须给这些属性一个唯一的名称,以避免名称与名为bordercolor和shadowcolor的属性CGcolor类型冲突.

请参阅以下代码.

CALayer Runtimeattribute.h

@import QuartzCore;@interface CALayer (IBConfiguration)@property(nonatomic,assign) UIcolor *borderIBcolor;@end@H_301_31@  

CALayer Runtimeattribute.m

@implementation CALayer (IBConfiguration)- (voID)setborderIBcolor:(UIcolor *)color {    self.bordercolor = color.CGcolor;}- (UIcolor *)borderIBcolor {    return [UIcolor colorWithCGcolor:self.bordercolor];}@end@H_301_31@  

最后,当您在xib或storyboard中设置运行时属性功能的bordercolor时,请设置borderIBcolor而不是bordercolor.它看起来像layer.borderIDcolor

有你的乐趣.

总结

以上是内存溢出为你收集整理的ios – UIButton用户定义的运行时属性不起作用全部内容,希望文章能够帮你解决ios – UIButton用户定义的运行时属性不起作用所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/1006172.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-22
下一篇2022-05-22

发表评论

登录后才能评论

评论列表(0条)

    保存