Unity UGUI图文混排源码(三) -- 动态表情

时间:2021-06-02 12:52:52

这里是根据图文混排源码(二)进一步修改的,其他链接也不贴了,就贴一个链接就好了,第一次看这文章的同学可以先去看看其他几篇文章

Unity UGUI图文混排源码(二):http://blog.csdn.net/qq992817263/article/details/51112311

1.首先来一个好消息,在最新版本的图文混排中,终于搞定了<quad>占位乱跳的问题,如果是从图文二过来已有工程的同学,可以将InlieText组件的Align By Geometry勾选上,对齐几何体,然而看字面意思我也一篇茫然,不过这里我们就可以理解他至少对齐了<quad>标签就可以了。

2.将标签引用图片名称索引图片改为了ID索引,为了让文本更简短一些,也为了后面的动态表情

3.动态表情,这当然是最新的功能了,你只需要将你需要变换的图片的ID加在标签原来的ID后面中间加一个#字符号分开就好,如图所示

<quad name=1#2 size=24 width=1 /> //切换ID为1和ID为2的两张图片
<quad name=1 size=24 width=1 />  //没有动态图片

Unity UGUI图文混排源码(三) -- 动态表情

4.来看看脚本文件,如果有同学需要使用肯定会根据要求更改脚本:

AnimNum表示最多切换的张数,应该在update里面限制,我好像还没加上去,后面再说

m_AnimIndex表示有动态表情的索引

m_AnimSpiteTag表示动态标签的集合

m_AnimSpriteInfor表示动态表情的集合

 #region 动画标签解析
//最多动态表情数量
int AnimNum = 4;
List<int> m_AnimIndex;
Dictionary<int, SpriteTagInfor[]> m_AnimSpiteTag;
Dictionary<int, InlineSpriteInfor[]> m_AnimSpriteInfor;
#endregion

5.其他功能,无非再解析标签,存一下表情数据,跟图文二差不多,然后动态图片的更新间隔时间也需要自己在update里面去更改

,因为改得很随意,现在代码乱得一团糟,有疑问的跟我说就可以

6.来一张动态表情的运行截图:

Unity UGUI图文混排源码(三) -- 动态表情

Unity UGUI图文混排源码(三) -- 动态表情

7.先继续更新功能,未完待续...