iOS Swift 高仿微信

LinXunFeng發表於2017-12-14

LXFWeChat

Swift 3.0 高仿微信

兩個測試賬號: lxf lqr  密碼都是123456

原始碼地址

碼雲 http://git.oschina.net/LinXunFeng/LXFWeChat

GitHub https://github.com/LinXunFeng/LXFWeChat

在此提供存放於百度雲的完整專案【高仿微信】- 百度雲 希望各位能在我的專案上獻出一個寶貴的Star 謝謝

從2016年12月份開始做到現在,雖說這個專案看起來不大,但是鍛鍊人的地方還真是很多的,微信通訊錄聯絡人的按拼音排序,自定義表情鍵盤中遇到的分頁滾動,微信聊天介面的圖片顯示、語音資訊的動畫等。挑戰著各種各樣的需求,本人也將遇到的問題的解決方案做了記錄並整理了一下,希望能給iOS程式設計師同胞們帶來幫助。目前基本的聊天已完成,實現了一部分個人資訊的修改,功能我會盡快完善的!

模仿微信的導航欄

在navigationBar底部新增一個新增了漸變層的view

let blurBackView = UIView()
blurBackView.frame = CGRect(x: 0, y: -20, width: kScreenW, height: 64)
let gradintLayer = CAGradientLayer()
gradintLayer.frame = CGRect(x: 0, y: 0, width: kScreenW, height: 64)
gradintLayer.colors = [
    UIColor.hexInt(0x040012).withAlphaComponent(0.76).cgColor,
    UIColor.hexInt(0x040012).withAlphaComponent(0.28).cgColor
]
gradintLayer.startPoint = CGPoint(x: 0, y: 0)
gradintLayer.endPoint = CGPoint(x: 0, y: 1.0)
blurBackView.layer.addSublayer(gradintLayer)
blurBackView.isUserInteractionEnabled = false
blurBackView.alpha = 0.5

// 設定導航欄樣式
navigationBar.barStyle = .black
navigationBar.insertSubview(blurBackView, at: 0)
複製程式碼

表情皮膚和更多皮膚

遇到的問題總結了一下,可以參考下以下總結的文章

《iOS - Swift UICollectionView橫向分頁滾動,cell左右排版》

《iOS - Swift UICollectionView橫向分頁的問題》

聊天介面

《iOS - Swift 仿微信聊天圖片顯示》

《iOS - Swift UITableView的scrollToRow的"坑"》

《iOS - Swift UIButton中ImageView的animationImages動畫執行完畢後,圖示變暗》

首頁

《iOS - Swift 仿微信小紅點(無數字)》

目前完成的功能

微信介面

  1. 顯示右上角的選單
  2. 顯示最近聯絡人
  3. 最近聯絡人資訊未讀數的顯示

通訊錄介面

  1. 聯絡人的排序
  2. 聯絡人總數顯示

發現介面

  1. 動態小紅點的顯示
  2. 購物選項的連結跳轉

我介面

  1. 個人頭像的上傳與設定,及頭像的儲存
  2. 我的二維碼介面的顯示及二維碼的儲存

聊天介面

  1. 小視訊的錄製與傳送
  2. 小視訊的播放
  3. 聊天時間
  4. 圖片的傳送與顯示
  5. 未傳送成功的重發功能
  6. 語音的錄製與傳送
  7. 語音的播放動態效果

已知BUG

  • 小視訊和圖片傳送出去後不能立即更新顯示縮圖
  • 更換頭像模擬器測試正常,真機無效。。

2017-07-24 更新

抽空出來新增了一個簡單的直播功能(對方需要先進入到對應的聊天介面) 相關博文:iOS - 給高仿微信新增直播聊天功能 需要用到編譯好的B站開源庫ijkplayer ,由於打包好的檔案太大,傳不上來,所以需要各位去自己編譯整合進去。

效果圖

動態圖

iOS   Swift 高仿微信
iOS   Swift 高仿微信
iOS   Swift 高仿微信
iOS   Swift 高仿微信
iOS   Swift 高仿微信
iOS   Swift 高仿微信
iOS   Swift 高仿微信

靜態圖

iOS   Swift 高仿微信
iOS   Swift 高仿微信
iOS   Swift 高仿微信
iOS   Swift 高仿微信
iOS   Swift 高仿微信
iOS   Swift 高仿微信
iOS   Swift 高仿微信
iOS   Swift 高仿微信
iOS   Swift 高仿微信
iOS   Swift 高仿微信

相關文章