我在我的名为"addButton“的应用程序中使用了自定义按钮,并且我想要用白色来边框,我如何才能在自定义按钮周围获得白色边框?
发布于 2011-11-17 13:26:08
您可以通过访问按钮的CALayer属性来设置该按钮的边框属性。
首先,添加Quartz
#import <QuartzCore/QuartzCore.h>
设置属性:
myButton.layer.borderWidth = 2.0f;
myButton.layer.borderColor = [UIColor greenColor].CGColor;
请参见:
https://developer.apple.com/documentation/quartzcore/calayer#//apple_ref/occ/cl/CALayer
上面链接中的CALayer允许您设置其他属性,如拐角半径、maskToBounds等。
另外,还有一篇关于按钮乐趣的好文章:
https://web.archive.org/web/20161221132308/http://www.apptite.be/tutorial_custom_uibuttons.php
发布于 2014-11-13 00:18:01
在swift中,你不需要导入"QuartzCore/QuartzCore.h“
只需使用:
button.layer.borderWidth = 0.8
button.layer.borderColor = (UIColor( red: 0.5, green: 0.5, blue:0, alpha: 1.0 )).cgColor
或
button.layer.borderWidth = 0.8
button.layer.borderColor = UIColor.grayColor().cgColor
发布于 2015-05-11 12:50:52
设置图层的borderWidth
和borderColor
的问题是,当你触摸按钮时,边框不会产生高亮效果。
当然,您可以观察按钮的事件并相应地更改边框颜色,但这感觉没有必要。
另一种选择是创建一个可伸展的UIImage,并将其设置为按钮的背景图像。您可以在Images.xcassets中创建图像集,如下所示:
然后,将其设置为按钮的背景图像:
如果您的图像是模板图像,您可以设置按钮的色调颜色,边框将更改:
现在,当触摸时,边框将与按钮的其余部分一起高亮显示。
https://stackoverflow.com/questions/8162411
复制相似问题