Как сделать UILabel и UIButton прописными буквами из раскадровки - PullRequest
2 голосов
/ 21 января 2020

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

enter image description here

1 Ответ

4 голосов
/ 21 января 2020

В настоящее время к этому ничего не готово, но вы можете добавить атрибут к Interface Builder:

Просто добавьте это в файл, назовите его, например, XIB+Extension.swift:

public protocol UIXIBStyle {
    var uppercased: Bool { get set }
}

extension UILabel: UIXIBStyle {
    @IBInspectable public var uppercased: Bool {
        get { return false }
        set(key) {
            if key {
                text = text?.uppercased()
            }
        }
    }
}

extension UIButton: UIXIBStyle {

    @IBInspectable public var uppercased: Bool {
        get { return false }
        set(key) {
            if key {
                setTitle(currentTitle?.uppercased(), for: .normal)
            }
        }
    }
}

И вы сможете увидеть новый атрибут с именем Uppercased под Attribute Inspector для любого UILabel или UIButton.

image

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...