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

Как установить цвет текста заголовка UIButton?

Я попытался изменить цвет текста для кнопки, но он все еще остается белым.

isbeauty = UIButton()
isbeauty.setTitle("Buy", forState: UIControlState.Normal)
isbeauty.titleLabel?.textColor = UIColorFromRGB("F21B3F")
isbeauty.titleLabel!.font = UIFont(name: "AppleSDGothicNeo-Thin" , size: 25)
isbeauty.backgroundColor = UIColor.clearColor()
isbeauty.layer.cornerRadius = 5
isbeauty.layer.borderWidth = 1
isbeauty.layer.borderColor = UIColorFromRGB("F21B3F").CGColor
isbeauty.frame = CGRectMake(300, 134, 55, 26)
isbeauty.addTarget(self,action: "first:", forControlEvents: UIControlEvents.TouchUpInside)
self.view.addSubview(isbeauty)

Я также попытался изменить его на красный, черный, синий, но ничего не происходит.

4b9b3361

Ответ 1

Вы должны использовать func setTitleColor(_ color: UIColor?, forState state: UIControlState) так же, как вы устанавливаете фактический текст заголовка. Документы

isbeauty.setTitleColor(UIColorFromRGB("F21B3F"), forState: .Normal)

Ответ 2

Swift UI решение

Button(action: {}) {
            Text("Button")
        }.foregroundColor(Color(red: 1.0, green: 0.0, blue: 0.0))

Swift 3, Swift 4, Swift 5

улучшить комментарии. Это должно работать:

button.setTitleColor(.red, for: .normal)

Ответ 3

Пример настройки цвета заголовка кнопки

btnDone.setTitleColor(.black, for: .normal)

Ответ 4

Это быстрый 5 совместимый ответ. Если вы хотите использовать один из встроенных цветов, то вы можете просто использовать

button.setTitleColor(.red, for: .normal)

Если вам нужны некоторые пользовательские цвета, то создайте расширение для UIColor, как показано ниже.

import UIKit
extension UIColor {
    static var themeMoreButton = UIColor.init(red: 53/255, green: 150/255, blue: 36/255, alpha: 1)
}

Затем используйте его для своей кнопки, как показано ниже.

button.setTitleColor(UIColor.themeMoreButton, for: .normal)

Подсказка: Вы можете использовать этот метод для хранения пользовательских цветов из цветового кода rgba и повторного их использования в приложении.

Ответ 5

func setTitleColor(_ color: UIColor?, 
               for state: UIControl.State)

Параметры:

color:
Цвет заголовка для использования в указанном состоянии.

состояние:
состояние, которое использует указанный цвет. Возможные значения описаны в UIControl.State.

Пример:

let MyButton = UIButton()
MyButton.setTitle("Click Me..!", for: .normal)
MyButton.setTitleColor(.green, for: .normal)

Ответ 6

ссылаясь на переключатели, вы также можете сделать это с помощью сегментированного управления следующим образом:

шаг 1: перетащите сегментированный элемент управления на ваш вид в инспекторе атрибутов измените заголовок двух сегментов, например "Мужской" и "Женский"

шаг 2: создать розетку & действие для этого в коде

шаг 3: создайте переменную для будущего использования, чтобы она содержала данные выбора

в коде сделайте следующее:

@IBOutlet weak var genderSeg: UISegmentedControl!

var genderPick : String = ""


 @IBAction func segAction(_ sender: Any) {

    if genderSeg.selectedSegmentIndex == 0 {
         genderPick = "Male"
        print(genderPick)
    } else if genderSeg.selectedSegmentIndex == 1 {
        genderPick = "Female"
          print(genderPick)
    }
}