在我的应用程序中,我需要创建一个带有1px彩色边框且带有角半径的按钮。宽度可能不同。

自然地,我将创建一个UIButton来设置它的layer.cornerRadius和layer.borderWidth。

最佳吗?
是否有更好的方法来实现这一目标?

另一位开发人员告诉我,这样做很昂贵。

你怎么看?

谢谢。

最佳答案

子类UIButton。可以命名为ViewWithThinBorder
在其实现中awakeFromNib方法中添加边框的角和宽度属性。

现在,您可以转到界面构建器选择按钮,然后从身份检查器将其类设置为ViewWithThinBorder

这不仅优化了其在界面构建器周围任何地方的可重用性。您也可以从中央位置更改所有视图层次结构中的按钮。

#import "ViewWithThinBorder.h"

@implementation ViewWithThinBorder

-(void)awakeFromNib
{
    self.layer.borderColor = [UIColor groupTableViewBackgroundColor].CGColor;
    self.layer.borderWidth = 1.0f;
    self.layer.cornerRadius = 1.0f;
}

@end

关于ios - 带边框的按钮(最优化),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29305259/

10-14 21:39
查看更多