BubbleThingie iOS聊天气泡界面组件

iOS 聊天界面的泡泡式设计在多 App 里都用得上,像 IM、客服、社交类的都少不了这个。BubbleThingie-master这个源码包把整个流程整理得挺清楚,从气泡绘制到自动布局一条龙搞定,适合拿来参考甚至直接改用。

消息气泡的绘制用的是自定义 UIView 子类,重写draw(_ rect: CGRect)配合UIBezierPath画个带弯角的矩形,顺便加个小箭头那种。左右两边的样式区分挺直观,用户一眼就知道谁说的。

Auto Layout部分也比较细,考虑到了消息长短不一、屏幕尺寸不同等情况,设置了适应性约束,基本上不怎么需要手动调位置。NSAttributedString也派上了用场,样式文本都能搞,像加粗、变色、加链接都能整。

还有一些小细节也做得比较到位,比如UIEdgeInsets控制文字和气泡边的间距,看着不拥挤;加了淡入动画,消息一出来就比较自然;用数据模型管理消息内容和时间,逻辑清晰。

再说说交互,手势支持也有,想加个长按弹出菜单、双击点赞什么的都方便。布局算法也写得挺细,多行、连发消息这些情况比较稳,不容易错位。

源码里还考虑到了横竖屏适配,整体表现挺灵活。性能这块也提了一嘴,用懒加载异步来防止卡顿,对话多也不怕。

如果你也在做 iOS 聊天界面,或者想复刻 QQ、微信那种聊天效果,这个包值得翻一翻。顺带一提,这个聊天界面开发的教程也挺实用,可以一起参考下。

zip 文件大小:2.77MB