iOS Swift 高仿微信

LXFWeChat

Swift 3.0 高仿微信git

兩個測試帳號: lxf lqr  密碼都是123456程序員

源碼地址

碼雲 git.oschina.net/LinXunFeng/…github

GitHub github.com/LinXunFeng/…swift

在此提供存放於百度雲的完整項目【高仿微信】- 百度雲 但願各位能在個人項目上獻出一個寶貴的Star 謝謝微信

從2016年12月份開始作到如今,雖然說這個項目看起來不大,可是鍛鍊人的地方還真是不少的,微信通信錄聯繫人的按拼音排序,自定義表情鍵盤中遇到的分頁滾動,微信聊天界面的圖片顯示、語音信息的動畫等。挑戰着各類各樣的需求,本人也將遇到的問題的解決方案作了記錄並整理了一下,但願能給iOS程序員同胞們帶來幫助。目前基本的聊天已完成,實現了一部分我的信息的修改,功能我會盡快完善的!post

模仿微信的導航欄

在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左右排版》spa

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

聊天界面

《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 ,因爲打包好的文件太大,傳不上來,因此須要各位去本身編譯集成進去。

效果圖

動態圖

靜態圖

微信公衆號
相關文章
相關標籤/搜索