天天看点

iOS开发之微信聊天页面实现

iOS开发之微信聊天页面实现

  一,定义我们要用的cell,代码如下:

    1,显示表情和text的cell,代码如下,需要根据nsmutableattributedstring求出bound,然后改变cell上的imageview和textview的宽度的约束值,动态的调整气泡的大小,具体代码如下:

    2.显示图片的cell,通过block回调把图片传到controller中,用于放大图片使用。

    3.显示录音的cell,点击cell上的button,播放对应的录音,代码如下:

  二,cell搞定后要实现我们的chatcontroller部分    

    1.chatcontroller.m中的延展和枚举代码如下:

    3.把聊天工具栏中返回的内容显示在tableview中,代码如下:

4.根据toolview中回调接口,获取工具栏中textview的contentsize,通过contentsize来调整toolview的高度约束,代码如下:

    5.从本地获取图片,并显示在相应的cell上,代码如下:

    6.把nsstring 转换成nsmutableattributestring,用于显示表情,代码如下:

    7.根据cell显示内容来调整cell的高度,代码如下:

    8.根据cell内容和用户类型,来选择cell,代码如下:

    9.点击发送的图片来放大图片代码如下:

    10.根据键盘的高度来调整toolview的位置,代码如下:

  三,代码有点多,不过在关键的部分都加有注释,在图片显示view中通过捏合手势来调整图片的大小,代码如下:

  上面的东西是在本地做的测试,没有加上xmpp即时通讯协议,以后的博客会通过服务器转发来进行聊天,并且会继续对微信进行完善,感兴趣的小伙伴继续关注吧。转载请注明出处。