【问题标题】:Layer borderColor and borderWidth is not working for UIButton图层边框颜色和边框宽度不适用于 UIButton
【发布时间】:2016-02-25 13:43:51
【问题描述】:

我需要为UIButton 添加边框颜色和宽度。我尝试在代码和情节提要中添加 layer borderColor 和 borderWidth 到 button。 但它无论如何都不起作用。我也在构建设置中添加了QuartzCore 框架。

这是我设置bordercolor 和宽度的代码:

self.accountButton.layer.borderColor = [UIColor blueColor].CGColor;
self.accountButton.layer.borderWidth = 6.0f;

有人可以帮我解决我哪里做错了吗?

【问题讨论】:

  • 你能告诉我你想要在设计方面实现什么
  • 您究竟在哪里添加代码?你确定你的按钮引用不是 nil 吗?
  • 我为按钮创建了一个属性。 @property(weak,nonatomic) IBOutlet UIButton *continueButton;另外,链接故事板中按钮的引用。它不是零。我已经在 viewwillappear 方法中添加了这些行来更改边框颜色

标签: objective-c uibutton border-color


【解决方案1】:

试试这种方式,你可以自定义宽度和高度到你以后想要的方式:

[self.<your_Button>.layer setCornerRadius:self.<your_Button>.frame.size.height/2]; 

[self.<your_Button>.layer setCornerRadius:self.<your_Button>.frame.size.width/2]; //
[self.<your_Button>.layer setBorderColor:[[UIColor darkGrayColor] CGColor]];
[self.<your_Button>.layer setBorderWidth:1.0f];

【讨论】:

  • OP使用的代码是正确的。调用setter方法没有任何区别! OP 没有提供太多信息。
【解决方案2】:

我找到了答案。我使用方法在 CALayer 类上创建了一个类别

- (void)setBorderColorFromUIColor:(UIColor *)color
{
    self.borderColor = color.CGColor;
}

然后在情节提要中,放入运行时间属性 layer.borderColorFromUIColor

这就是我的快乐:)

【讨论】:

    猜你喜欢
    • 2014-11-27
    • 1970-01-01
    • 2020-03-07
    • 1970-01-01
    • 2017-12-29
    • 2017-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多