聊天面板的一些心得与图文混排

核心代码使用的是这位大佬的博客,在github可以下到源码。

http://blog.csdn.net/column/details/13021.html

图文混排和无限滚动进行混合的话,首先需要一个用来存储消息的模型。把自己发的消息和从服务器端接过来的消息都存在这个模型内,然后用无限滚动根据模型刷新view。

1.图文混排使用到的核心代码有三个:InlineManager、InlineText、SpriteGraphic。

  其中InlineManager要挂在其他两个脚本的父物体上。

  InlineText是继承Text脚本,充当一个文字框的作用,但是这里会根据图片设置的tag而为表情留出对应的空位。

  SpriteGraphic则是主要负责显示表情的脚本(其实表情是在InlineManager里绘制的)。

2.注意使用这套图文混排的时候,在搭建ui的时候,不要进行任何的缩放(scale的改变),如果进行缩放,表情会绘制在一些奇怪的地方。

3.这里绘制出的表情,可以通过移动SpriteGraphic所挂载的游戏物体而进行移动,所以在和scrollrect进行配合时,一定要把SpriteGraphic所在的游戏物体放在你的content下,这样图片才会跟着你的content而移动。

4.当你的content的长度变化时,绘制图片的位置也会随着拉伸而改变位置,我之前的做法是:在改变content之前将SpriteGraphic游戏物体移出content。然后改变后再把SpriteGraphic放回content的子物体下。

posted @ 2017-11-10 15:28  萌新小L  阅读(447)  评论(0编辑  收藏  举报