hunter-ji / Blog

My Blog.
121 stars 38 forks source link

SwiftUI项目复制字符串到剪切板 #37

Open hunter-ji opened 3 years ago

hunter-ji commented 3 years ago

一. 前言

这是个比较坑的问题,我一开始开发的是macos项目,到网上搜的方案基本都是使用UIPasteboard方法,但是偏偏用不了。

后来开发ios项目,用macos的就不行,发现UIPasteboard的可行,所以这里需要清楚的是,ios和macos的复制方法是不同的......

二. MacOS

1. 实现

func copyToClipBoard(textToCopy: String) {
  let pasteBoard = NSPasteboard.general
  pasteBoard.clearContents()
  pasteBoard.setString(textToCopy, forType: .string)
}

2. 调用

copyToClipBoard(textToCopy: "Hello,World!")

三. IOS

1. 实现

UIPasteboard.general.setValue(<Your-String>, forPasteboardType: kUTTypePlainText as String)

2. 调用

UIPasteboard.general.setValue("Hello,World!", forPasteboardType: kUTTypePlainText as String)