我在网上试过的一些事情:
var pasteboardItems: [NSPasteboardItem]? { get }print("\(pasteboardItems)")
和
let pb = NSPasteboard.general()pb.string(forType: NSPasteboardTypestring)print("\(pb)")
和
let pasteboard = UIPasteboard.generalif let string = pasteboard.string { // text was found and placed in the "string" constant}
最后
func paste(sender: AnyObject?) { let pasteboard = NSPasteboard.generalPasteboard() if let nofElements = pasteboard.pasteboardItems?.count { if nofElements > 0 { // Assume they are strings var strArr: Array<String> = [] for element in pasteboard.pasteboardItems! { if let str = element.stringForType("public.utf8-plain-text") { strArr.append(str) } } // Exit if no string was read if strArr.count == 0 { return } // Perform the paste operation dataSource.cmdPaste(strArr) } } }解决方法 适用于Swift 3和Swift 4
// Set string to clipboardlet pasteboard = NSPasteboard.generalpasteboard.declareTypes([NSPasteboard.PasteboardType.string],owner: nil)pasteboard.setString("Good Morning",forType: NSPasteboard.PasteboardType.string)var clipboardItems: [String] = []for element in pasteboard.pasteboardItems! { if let str = element.string(forType: NSPasteboard.PasteboardType(rawValue: "public.utf8-plain-text")) { clipboardItems.append(str) }}// Access the item in the clipboardlet firstClipboardItem = clipboardItems[0] // Good Morning总结
以上是内存溢出为你收集整理的在macOS上使用Swift 3从剪贴板中读取全部内容,希望文章能够帮你解决在macOS上使用Swift 3从剪贴板中读取所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)