XcodeでmacOS用アプリを作っているのですが、クリップボードに文字列をコピーする方法を教えてください。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答2件
0
ベストアンサー
NSPasteboard
というものを使用します。
NSPasteboardにgeneral
というクラスプロパティがあり、このインスタンスがシステム全体のクリップボードになります。
NSPasteboardには「値」と「タイプ」の組を登録する形になります。
例えば値が「https://tatatil.com」でタイプが「URL」などです。
今回の場合はstringでOKです。
まず
swift
1NSPasteboard.general.clearContents()
によって現在のクリップボードの内容を破棄します。
ついで
swift
1NSPasteboard.general.setString("もじれつ", forType: .string)
でクリップボードにコピーします。
登録するためのメソッドは登録する「値」によって変更する必要があります。
NSPasteboardには同時に複数の値とタイプの組が登録できますので用途によっては複数登録したほうがユーザーにとっては便利になると思います。
例えばURLをタイプ「URL」とタイプ「string」の両方登録しておいたり、画像ファイルを「fileURL」、「fileContents」「tiff」「png」などのタイプで登録しておいたりなどです。
複数のタイプが登録されていた場合ペーストを受け付ける側のアプリケーションが規定する優先順位で使われます。
投稿2019/12/18 07:38
総合スコア3391
0
UIPasteboard.general.string
を使ってみてください.
swift
1let pasteboard = UIPasteboard.general 2pasteboard.string = "HelloWorld!" 3 4if let string = pasteboard.string { 5 print(string) 6}
例えばボタンを押した時にクリッポボードコピーを行いたい場合は,ボタンが押された時に呼び出される関数の中に上記のような処理を記述すればよいかと思います.
投稿2019/12/18 03:48
総合スコア101
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。