Использование неразрешенного идентификатора 'kUTTypePDF' - PullRequest
0 голосов
/ 13 декабря 2018

Как использовать типы файлов в Swift

в соответствии с https://developer.apple.com/documentation/coreservices/kuttypepdf

это должно быть вполне нормально

UIPasteboard.general.setData(Data(contentsOf: URL(fileURLWithPath: path)), forPasteboardType: kUTTypePDF)

все же это приводит к

Use of unresolved identifier 'kUTTypePDF'

Ответы [ 2 ]

0 голосов
/ 13 декабря 2018

Вам нужно импортировать import MobileCoreServices, как сказал «Роберт Дреслер»

Но вы увидите ошибку ниже, когда import MobileCoreServices

'CFString' неявно преобразуется в 'Строка ';Вы хотели использовать «как» для явного преобразования?

Так что вам нужно сделать kUTTypePDF as String

После этого вы можете увидеть ошибку в Data(contentsOf: URL(fileURLWithPath: path), как показано ниже,

Вызов может скинуть, но он не помечен как 'try' и ошибка не обрабатывается

Поэтому вам нужно использовать try и catch.

Ваш окончательный код будет выглядеть следующим образом.

do{

        let data = try Data(contentsOf: URL(fileURLWithPath: path))

        UIPasteboard.general.setData(data, forPasteboardType: kUTTypePDF as String)

    }catch{

        print("error :\(error)")
    }
0 голосов
/ 13 декабря 2018

Вы должны импортировать MobileCoreServices

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