[英]Programmatically adding a shadow to a UIButton label
我试图在没有运气的情况下为按钮标签添加1px黑色阴影。 我试过这个: self.setTitleShadowOffset = CGSizeMake(0, -1);
但我得到:
在非结构或联合的东西中请求成员'setTitleShadowOffset'
任何建议都会非常感谢!
正确的属性是self.titleLabel.shadowOffset:
UIButton *b = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[b setTitleShadowColor:[UIColor purpleColor] forState:UIControlStateNormal];
b.titleLabel.shadowOffset = CGSizeMake(1.0, 1.0);
[b setTitle:@"Hello, I'm a Button" forState:UIControlStateNormal];
b.frame = CGRectMake(10.0, 10.0,300.0, 40.0);
其他答案没有正确设置阴影颜色(我怀疑他们没有注意到,因为他们试图将阴影颜色设置为默认颜色,黑色。)
这段代码为我添加了一个白色阴影到我的按钮文本:
myButton.titleLabel.shadowOffset = CGSizeMake(0, 1);
[myButton setTitleShadowColor:[UIColor whiteColor] forState:UIControlStateNormal];
不推荐使用UIButton
的setTitleShadowOffset
。 使用shadowOffset
的titleLabel财产UIButton
buttonName.titleLabel.shadowOffset = CGSizeMake(0, -1);
对于Swift 3:
button.setTitleShadowColor(UIColor.red, for: .normal)
button.titleLabel?.shadowOffset = CGSize(width: 2, height: 2)
以下是如何使用radius属性在Objective-C中为按钮标题添加阴影:
#import <QuartzCore/QuartzCore.h>
button.titleLabel.layer.shadowOffset = CGSizeMake(2.0, 2.0);
button.titleLabel.layer.shadowColor = [UIColor colorWithWhite:0.1 alpha:0.7].CGColor;
button.titleLabel.layer.shadowRadius = 2.0;
button.titleLabel.layer.shadowOpacity = 1.0;
button.titleLabel.layer.masksToBounds = NO;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.