Как отобразить значения печати на UILabel? - PullRequest
0 голосов
/ 30 апреля 2018

Мне было интересно, как я могу показать print(" ", separator: "", terminator: "") на моем View UILable?

Я пытался создать отдельные функции separator и termiantor, но это не работает.

Любая помощь будет оценена!

Ответы [ 3 ]

0 голосов
/ 30 апреля 2018

Вы можете свернуть свою собственную версию печати, чтобы создать строку с разделителем и терминатором.

Вот пример:

static func makeString(from strings: String..., separator: String = "", terminator: String = "") ->String {
    var result = ""
    let endLoop = strings.count - 1
    for i in 0..<endLoop {
        result.append(strings[i])
        result.append(separator)
    }
    result.append(strings[endLoop])
    result.append(terminator)
    return result
}
0 голосов
/ 30 апреля 2018

Вы можете имитировать функцию print(_:,separator:,terminator:) для создания форматера String, используя приведенный ниже String инициализатор.

extension String {
    init(with items:Any..., separator: String = " ", terminator: String = "\n") {
        var formattedString = items.first ?? ""
        for item in items.dropFirst() {
            formattedString = "\(formattedString)\(separator)\(item)"
        }
        self = "\(formattedString)\(terminator)"
    }
}

Вы можете использовать его следующим образом, чтобы присвоить форматированное значение свойству UILabel text.

let formattedString = String(with: 1,2,3,4,separator:"...",terminator:"\t")
yourLabel.text = formattedString
0 голосов
/ 30 апреля 2018

Вы можете использовать функцию join в Sequence, чтобы получить строку и установить ее в качестве свойства текста вашей метки.

Пример:

let values = ["Hello", "world"]
values.joined(separator: " ")

Вывод будет:

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