Swift Невозможно создать строку с типом аргумента Int64 - PullRequest
0 голосов
/ 30 сентября 2018

Я создаю игру, которая включает в себя таблицу лидеров Game Center.Я хочу сделать пользовательский интерфейс списка лидеров, а не использовать интерфейс по умолчанию.

Я пытаюсь преобразовать значения, хранящиеся в таблице лидеров Game Center, в строку, чтобы я мог отобразить их, используя SKLabelNode.Однако я получаю сообщение об ошибке, в котором говорится:

Невозможно вызвать инициализатор для типа 'String' со списком аргументов типа '(Int64?)'

Я получаю доступигровой центр получает оценки, используя

leaderboard.scores[i].value

Когда я использую метод String(describing: ), мой узел метки читает «опционально (10)», причем все значения находятся в скобках.Мне интересно, как аккуратно перенести хранилище данных в Game Center в число в строковом формате.

1 Ответ

0 голосов
/ 30 сентября 2018

Попробуйте необязательную привязку:

if let unwrapped = leaderboard.scores[i].value {
    let string = String(unwrapped)
    print(string)
}

Или используйте оператор защиты, если вы хотите использовать развернутое значение в остальной части области действия:

guard let unwrapped = leaderboard.scores[i].value else {
    fatalError("Couldn't unwrap the score value")
}
let string = String(unwrapped)
...