Подтвердить что ты не робот

Программно добавляя тень к ярлыку UIButton

Я пытаюсь добавить черную тень на 1px на ярлык кнопки без везения. Я пробовал это: self.setTitleShadowOffset = CGSizeMake(0, -1); но я получаю:

Запрос члена 'setTitleShadowOffset' в чем-то не структуре или объединении

Любые предложения были бы фантастически благодарны!

4b9b3361

Ответ 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)