Кто-нибудь знает, какой цвет имеет текст UITextField
, по умолчанию? Я пытаюсь установить текст UITextView
на тот же цвет. Я читал в другом месте, что это UIColor.lightGrayColor()
, но на самом деле это немного легче.
Каков цвет по умолчанию для текста заполнителя в UITextField?
Ответ 1
Вы можете получить этот цвет, UITextField
attributedPlaceholder
из UITextField
.
По умолчанию выглядит так: NSColor = "UIExtendedSRGBColorSpace 0 0 0.0980392 0.22";
Вы можете добавить расширение (или категорию) на UIColor
:
extension UIColor {
static var placeholderGray: UIColor {
return UIColor(colorLiteralRed: 0, green: 0, blue: 0.0980392, alpha: 0.22)
}
}
2018, последний синтаксис просто:
extension UIColor {
static var officialApplePlaceholderGray: UIColor {
return UIColor(red: 0, green: 0, blue: 0.0980392, alpha: 0.22)
}
}
#colorLiteralRed
устарел. Помните об этом в некоторых случаях.
Ответ 2
Цвет # C7C7CD (r: 199 г: 199 b: 205) (как сказал pterry26)
и семейство шрифтов HelveticaNeue-Medium и размер 16
Обратите внимание, что это предположение о том, как цвет выглядит на экране. Для фактических значений, просто проверьте код Apple для attributedPlaceholder
.
Ответ 3
Я отправил скриншот на мой mac и использовал инструмент Photoshop eyedropper. Для всех, кто интересуется, это, по крайней мере, очень хорошее приближение цвета заполнителя на белом фоне:
Красный: 199, Зеленый: 199, Синий: 205
Ответ 4
Фактический цвет не является сплошным, но имеет прозрачность. Таким образом, самый близкий цвет
Красный: 4, Зеленый: 4, Синий: 30, Альфа: ~ 22%
Если вы используете это на белом фоне, вы получите то, что @pterry26 написал выше.
Ответ 5
Используя значения из правильного ответа выше
extension UIColor {
class func greyPlaceholderColor() -> UIColor {
return UIColor(red: 0.78, green: 0.78, blue: 0.80, alpha: 1.0)
}
}
Ответ 6
Согласно коду Apple, это 70% серый
open var placeholder: String? // default is nil. string is drawn 70% gray
и если мы конвертируем его в rgb:
UIColor.init(red: 178/255, green: 178/255, blue: 178/255, alpha: 1)
Ответ 7
Я считаю, что это R:191 G:191 B:198 A:1
. См. Изображение ниже. Здесь отмеченные элементы управления UIButton
с над Title TextColor
и остальные UITextFields
с цветом-заполнителем по умолчанию. Если iOS делает разницу, то это iOS 9.
Ответ 8
Код # 999999 идеально подходит для моей формы!
Ответ 9
Лучше динамически захватывать цвет текстового поля на случай, если оно изменится в будущем. По умолчанию 70% серого, что довольно близко
extension UITextField {
var placeholderColor: UIColor {
return attributedPlaceholder?.attributes(at: 0, effectiveRange: nil)[.foregroundColor] as? UIColor ?? UIColor(white: 0.7, alpha: 1)
}
}
Ответ 10
Просто добавьте, что в iOS 13 (и более поздних версиях) цвет заполнителя выставляется Apple через
UIColor.placeholderText
и он динамический (поддерживает как темный, так и светлый).
Помещение с предварительной iOS 13:
static var placeholderText: UIColor {
if #available(iOS 13.0, *) {
return .placeholderText
}
return UIColor(red: 60, green: 60, blue: 67)!.withAlphaComponent(0.3)
}
Ответ 11
Начиная с iOS 13, вы должны использовать UIColor.placeholderText
, чтобы убедиться, что элемент хорошо выглядит как в светлых, так и в темных режимах. Документация:
Цвет для текста заполнителя в элементах управления или текстовых представлениях.
Ответ 12
Я думаю, что вы можете получить цвет с помощью инструментов на вашем Mac.
Ответ 13
Установите шрифт ярлыка на "светлый"
mylabel.font = [UIFont fontWithName: @ "HelveticaNeue-Light" size: 14.0f];
и цветовой код для текста заполнителя - # c2b098