我有一个字符串,想要将其放入UIPasteboard
,并且它应该在2分钟后过期。
UIPasteboard.general.setObjects(objects: [NSItemProviderWriting],
localOnly: true,
expirationDate: Date().addingTimeInterval(120))
对象键(objects
)的值应该是什么?
我有一个字符串,想要将其放入UIPasteboard
,并且它应该在2分钟后过期。
UIPasteboard.general.setObjects(objects: [NSItemProviderWriting],
localOnly: true,
expirationDate: Date().addingTimeInterval(120))
对象键(objects
)的值应该是什么?
you can you UIPasteboard.general.setItems
let expireDate = Date().addingTimeInterval(TimeInterval(120))
UIPasteboard.general.setItems([[UIPasteboard.typeAutomatic: value]],
options: [UIPasteboard.OptionsKey.expirationDate: expireDate])
NSItemProviderWriting
及其所需方法。一个非常简单的实现可能如下,其中yourString
包含要粘贴的字符串:static var writableTypeIdentifiersForItemProvider: [String] {
return [ kUTTypeUTF8PlainText as String ]
}
func loadData(withTypeIdentifier typeIdentifier: String, forItemProviderCompletionHandler completionHandler: @escaping (Data?, Error?) -> Void) -> Progress? {
completionHandler(yourString.data(using: .utf8), nil)
return nil
}
import MobileCoreServices
以导入kUTTypeUTF8PlainText
的定义。UIPasteboard.general.setObjects(objects: [ self ],
localOnly: true,
expirationDate: Date(timeIntervalSinceNow: 120))
kUTTypeUTF8PlainText
,2)loadData
中的yourString
是从哪里来的?这是假定我在我的VC上将字符串分配给本地变量吗? - Zack ShapiroMobileCoreServices
中定义。变量yourString
只是一个文本占位符,您应根据需要进行定义。 - clemens