unity3d将text复制到剪贴板并用不同颜色text标记

今天在开发的过程中发现有时候需要有多种数据类型在同一text下,比如大家在做游戏的机器码、注册码这方面的时候,就可以用不同颜色标注“点此复制”,用户点击一次就直接复制其中的内容了,岂不是省了很多用户的事情呢?对吧?提高了用户的体验,所以就深入研究了一下“unity3d将text复制到剪贴板并用不同颜色text标记”,下面分享给大家。

按照国际惯例先上效果图:

unity复制text到剪贴板

unity复制text到剪贴板

unity复制text到剪贴板成功

unity复制text到剪贴板成功

教程分两步:

1、unity中将text内容复制到剪贴板,代码如下:

TextEditor te = new TextEditor();
te.text = getMC();
te.SelectAll();
te.Copy();

说明:其中“te.text = getMC();“中的getMC()是获取了其他位置的字符,这个位置大家可以替换为自己要复制的内容传过去,然后将“te”的值全选用“SelectAll”,最后使用“te.Copy()”将传到“te”的内容复制到剪贴板,大家就可以黏贴到需要使用的位置了。

2、unity中同一text用不同的颜色标记,代码如下:

m_McText.text = getMC()+ “<color=#ff0000>点击复制</color>”;

说明:这段代码很简单,一开始以为UGUI不能直接用,后来发现我潜意识是错的,“getMC()”是正常的文本内容,“点击复制”则是不同颜色的文本。

3、实现了一个循环提示用户点击复制内容到剪贴板的功能

public void unityer()
{
if (m_McText.text == “复制成功!\n点此再次查看。”)
{
m_McText.text = getMC()+ “<color=#ff0000>点击复制</color>”;
Debug.Log(m_McText);
}
else if (m_McText.text == getMC() + “<color=#ff0000>点击复制</color>”)
{
m_McText.text = “复制成功!\n点此再次查看。”;
}
TextEditor te = new TextEditor();
te.text = getMC();
te.SelectAll();
te.Copy();
}

合并后我的代码就是上面这段,实现了一个循环提示用户点击复制内容到剪贴板的功能,今天就简单地和大家分享这个小功能,大家有问题的可以留言向我提问。

赞(2) 打赏
转载必须注明出处及文章链接:网赚世界 » unity3d将text复制到剪贴板并用不同颜色text标记
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏