以下の内容はhttps://kan-kikuchi.hatenablog.com/entry/Clipboardより取得しました。


クリップボードへの文字列の設定(コピー)【Unity】




この記事でのバージョン
Unity 2018.4.8f1


はじめに

今回はクリップボードへの文字列の設定する方法、つまりコピーを実装する方法のご紹介です。

f:id:kan_kikuchi:20191029090908g:plain


なお、Unityエディタ上はもちろん、MacやiOSと言った実機上でも動作します。


GUIUtility.systemCopyBuffer

クリップボードの文字列にアクセスするにはGUIUtilityのsystemCopyBufferを使います。



例えば以下のような感じで設定も取得も可能です。

//コピー前のクリップボードの文字列をログで表示
Debug.Log($"コピー前 : {GUIUtility.systemCopyBuffer}");
    
//クリップボードへ文字を設定(コピー)
GUIUtility.systemCopyBuffer = "abc012あいう漢字";
    
//コピー後のクリップボードの文字列をログで表示
Debug.Log($"コピー後 : {GUIUtility.systemCopyBuffer}");
f:id:kan_kikuchi:20191029090908g:plain


ただし、コピーした際に通知とかは特に出ないので、別途ユーザに伝える必要があります。

なお、エディタ拡張であればEditorUtility.DisplayDialogを使うのが簡単です。




//クリップボードにコピーする文字列
string coptyText = "abc012あいう漢字";

//クリップボードへ文字を設定(コピー)
GUIUtility.systemCopyBuffer = coptyText;
    
//設定した文字列をダイアログで伝える
EditorUtility.DisplayDialog("クリップボードに文字を貼り付けました", coptyText, "OK");
f:id:kan_kikuchi:20191029084911j:plain







以上の内容はhttps://kan-kikuchi.hatenablog.com/entry/Clipboardより取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14