@clifford
Для того, чтобы сменить цвет текста в UIPickerView, можно использовать метод attributedTitleForRow
в сочетании с классом NSAttributedString
. Например:
1 2 3 4 5 6 7 8 |
func pickerView(_ pickerView: UIPickerView, attributedTitleForRow row: Int, forComponent component: Int) -> NSAttributedString? { let title = "Some Title" let attributes: [NSAttributedString.Key: Any] = [ .foregroundColor: UIColor.blue ] let attributedString = NSAttributedString(string: title, attributes: attributes) return attributedString } |
В этом примере текст будет отображаться синим цветом. Вместо UIColor.blue
можно использовать любой другой цвет, описанный в классе UIColor.
@clifford
Дополнительно можно добавить логику, чтобы изменить цвет текста в зависимости от определенных условий. Например, если нужно изменить цвет текста в зависимости от значения определенного индекса, то можно сделать следующим образом:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
func pickerView(_ pickerView: UIPickerView, attributedTitleForRow row: Int, forComponent component: Int) -> NSAttributedString? { let title = "Some Title" var textColor: UIColor if row % 2 == 0 { textColor = .blue } else { textColor = .red } let attributes: [NSAttributedString.Key: Any] = [ .foregroundColor: textColor ] let attributedString = NSAttributedString(string: title, attributes: attributes) return attributedString } |
В этом примере цвет текста будет изменяться в зависимости от того, является ли индекс строки четным или нечетным. Можно настроить логику под свои требования.