Программно добавляя тень к ярлыку UIButton
Я пытаюсь добавить черную тень на 1px на ярлык кнопки без везения. Я пробовал это: self.setTitleShadowOffset = CGSizeMake(0, -1);
но я получаю:
Запрос члена 'setTitleShadowOffset' в чем-то не структуре или объединении
Любые предложения были бы фантастически благодарны!
Ответы
Ответ 1
В других ответах неправильно установлен теневой цвет (я подозреваю, что они не заметили, потому что они пытались установить цвет тени по умолчанию, черный).
Этот код работал у меня, чтобы добавить белую тень к тексту моей кнопки:
myButton.titleLabel.shadowOffset = CGSizeMake(0, 1);
[myButton setTitleShadowColor:[UIColor whiteColor] forState:UIControlStateNormal];
Ответ 2
Правильное свойство - 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);
Ответ 3
setTitleShadowOffset
для UIButton
устарел. Используйте shadowOffset
свойства titleLabel для UIButton
buttonName.titleLabel.shadowOffset = CGSizeMake(0, -1);
Ответ 4
В Swift 3.0
myButton.titleLabel?.layer.shadowRadius = 3
myButton.titleLabel?.layer.shadowColor = UIColor.black.cgColor
myButton.titleLabel?.layer.shadowOffset = CGSize(width: 0, height: 1)
myButton.titleLabel?.layer.shadowOpacity = 0.5
myButton.titleLabel?.layer.masksToBounds = false
![введите описание изображения здесь]()
Ответ 5
для Swift 3:
button.setTitleShadowColor(UIColor.red, for: .normal)
button.titleLabel?.shadowOffset = CGSize(width: 2, height: 2)