天天看點

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即時通訊協定,以後的部落格會通過伺服器轉發來進行聊天,并且會繼續對微信進行完善,感興趣的小夥伴繼續關注吧。轉載請注明出處。

繼續閱讀