Unity 游戏框架搭建 2019 (二) 文本复制到剪切板

在上一篇中,我们通过自动生成文件名来简化了我们的导出步骤。但是这样还不够。因为从笔者的角度来看,其实还有很大的优化空间。

不过,我们不要心急,罗马不是一天建成的,但是可以通过一步一步迭代完成的。

那么今天我们就在此基础上再试着前进一小步。

第二个示例我们要做什么呢?

我们来分析一下我们每次导出时候的操作步骤:

  1. 点击菜单栏 QFramework/1.生成 unitypackage 名字。
  2. 复制控制台中的名字。
  3. 右击 QFramework 文件夹,然后选择 ExportPackage。
  4. 之后确保取消选择 Include Dependency。
  5. 粘贴名字,然后导出到指定目录下。

总共五个步骤。

现在提出一个问题,第一步和第二步可不可以合并为一个步骤?如果合并成功。那么第一步则应该描述为“点击菜单栏 QFramework/1.生成 unitypackage 名字并复制”。

这样问题的关键点就出来了。

关键点

“点击菜单栏 QFramework/1.生成 unitypackage 名字并复制”,本质上就是把字符串复制到剪切板。

有了这个关键点,我们就可以在搜索引擎进行搜索了(这里推荐用谷歌,不能FQ的同学建议用 bing.com)。
将“Unity、编辑器、UnityEditor、拷贝、复制”等关键字进行组合搜索了很久,几分钟后终于找到一点线索。
找到了这个 API

    GUIUtility.systemCopyBuffer = "要复制的关键字";

这个 API 就是关键所在。

马上写个脚本测试一下。代码如下:

    #if UNITY_EDITOR
    using UnityEditor;
    #endif
    
    using UnityEngine;
    
    namespace QFramework
    {
    	public static class CopyText2Clipboard
    	{
    #if UNITY_EDITOR
    		[MenuItem("QFramework/2.复制文本到剪切板")]
    #endif
    		private static void CopyText()
    		{
    			GUIUtility.systemCopyBuffer = "要复制的关键字";
    		}
    	}
    }

代码非常简单。

测试步骤

  1. 把脚本文件放到我们的 QFramework/2.复制文本到剪切板/ 目录下。
  2. 然后点击菜单栏 QFramework/2.复制文本到剪切板。
  3. 试着在任意可输入的地方进行粘贴(ctrl+v),就可以看到结果了。

结果如下:
006tNc79gy1fzdbfkg6atj309s03qaa1.jpg

到此呢,大家可以进行导出了。到此呢,笔者的 unitypackage 文件名为 QFramework_20181103_02。

小结

虽然没有完成合并之后的功能,但是我们解决最关键的问题。对于笔者来说,今天示例中的 API 之前也从没有接触过。笔者也学习到了。

转载请注明地址:liangxiegame.com

更多内容

posted @ 2020-03-20 12:08  凉鞋的笔记  阅读(506)  评论(0编辑  收藏  举报