IM群聊头像九宫格实现方式

本文介绍了在IM项目中实现群聊头像九宫格的方法,包括创建ContentView显示头像布局,循环加载头像并添加,以及在所有头像加载完毕后通过画布生成并上传九宫格图片。当群成员变化时需根据需求判断更新九宫格。
摘要由CSDN通过智能技术生成

最近一直在做与IM相关的项目,所以就遇到了群聊头像九宫格的问题。

具体思路:
1:创建ContentView:vi用来显示九宫格头像布局。
2:循环加载头像并添加到vi布局中。
3:在所有头像全部加载完成后开启画布获取九宫格头像排布Image,返回显示上传到服务器一劳永逸。(注: 群成员发生改变时需要注意根据自己的需求判断是否更新九宫格图片)

class func creatGroupAvatar(avatars: [String], finished: @escaping (_ data: UIImage?) -> ()) {
        let viewWidth: CGFloat = 60

        let avatarCount = avatars.count > 4 ? 4:avatars.count
        let avatarWidth = viewWidth * 0.5 * 0.85
        let space_twoAvatar = (viewWidth - avatarWidth * 2) / 3 //一行两个头像的间距
        let space_avatar = (viewWidth - avatarWidth) * 0.5 //一行只有一个头像的间距

        var x = avatarCount % 
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值