国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

電子發燒友App

硬聲App

掃碼添加小助手

加入工程師交流群

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
電子發燒友網>電子資料下載>電子資料>CDChatList高性能聊天頁面解決方案

CDChatList高性能聊天頁面解決方案

2022-06-24 | zip | 11.41 MB | 次下載 | 2積分

資料介紹

授權協議 MIT
開發語言 Objective-C
操作系統 跨平臺
軟件類型 開源軟件

軟件簡介

CDChatList

poYBAGKp4BGADL5tAAkP3y77KSg847.pngpYYBAGKp4BOAahUJAAN7-YE3K7k593.pngpoYBAGKp4BSAd09dAAb6bi0GxZs742.png

poYBAGKp4BaAYydBAAlQTWpUr2Y963.pngpYYBAGKp4BiAP9ZSAA7WEbQQUeo663.png

高性能的聊天頁面解決方案 對聊天列表的高度封裝,可靈活配置頁面樣式

聊天界面其實大同小異,所以這里封裝了一個聊天的組件,使用CoreText和手動代碼布局,盡量實現簡單,通用,高效,易于維護。

項目結構

CDChatListView: UITableView 視圖,聊天頁面主體

CDBaseMsgCell: 實現消息氣泡基本視圖

CDTextTableViewCell、CDImageTableViewCell、CDAudioTableViewCell: 繼承自CDBaseMsgCell,實現響應功能。 CDSystemTableViewCell: 特殊消息氣泡,實現系統通知

CellCaculator: tableview布局計算,并提前渲染cell

ChatConfiguration: chatlist配置類組,UI定制,及資源等

子組件

CDLabel: 富文本標簽 CDChatInputBox: 輸入框封裝組件

安裝

支持至iOS 11

pod?'CDChatList'
#import?

?

使用

配置 CDChatList

ChatHelpr負責ChatHelpr的UI配置,及組件的資源文件設置

UI配置及資源文件都有默認,所以無需自定義的話,就可以跳過組件的配置

添加 CDChatList 視圖

CDChatListView?*list?=?[[CDChatListView?alloc]?initWithFrame:self.view.bounds];
list.msgDelegate?=?self;self.listView?=?list;
[self.view?addSubview:self.listView];

?

CDChatList會將視圖控制器automaticallyAdjustsScrollViewInsets及contentInsetAdjustmentBehavior設為NO及Never,并適應導航欄高度

消息模型 MessageModalProtocal

可以使用自己的消息模型,消息模型需遵守MessageModalProtocal,實現相關屬性

組件事件 ChatListProtocol

從組件發出的消息

消息列表請求加載更多消息

-(void)chatlistLoadMoreMsg:?(CDChatMessage)topMessage
callback:?(void(^)(CDChatMessageArray))finnished;

?

消息中的點擊事件

-(void)chatlistClickMsgEvent:?(ChatListInfo?*)listInfo;

?

向組件發消息

添加新的數據到底部

-(void)addMessagesToBottom:?(CDChatMessageArray)newBottomMsgArr;

?

更新數據源中的某條消息模型(主要是為了更新UI上的消息狀態)

-(void)updateMessage:(CDChatMessage)message;

?

使用場景

收/發消息

//?發{
	MessageModal?*modal;
}
-(void)send{
	modal?=?[[MessageModal?alloc]?init];
	modal.msgState?=?CDMessageStateSending;
	modal.createTime?=?...;
	modal.msg?=?...;
	modal.msgType?=?...;
	[chatList?addMessagesToBottom:?modal];
}

-(void)sendCallBack:(BOOL)isSuccess{
	modal.msgState?=?isSuccess;??//?此處應處理成枚舉
	[chatList?updateMessage:?modal];
}//?收-(void)receivedNewMessage:(MessageModal?*)modal{
	[chatList?addMessagesToBottom:?modal];
}

?

下拉加載更多消息

消息列表被下拉時,觸發此回調

-(void)chatlistLoadMoreMsg:?(CDChatMessage)topMessage
callback:?(void(^)(CDChatMessageArray))finnished
{	//?根據topMessage?獲取更多消息
	NSArray?*msgArr?=?[self?getMoreMessageFrom:?topMessage?amount:?10];
	callback(msgArr);
}

?

消息點擊事件

目前消息體重處理了 文本點擊 及 圖片點擊 事件

-(void)chatlistClickMsgEvent:?(ChatListInfo?*)listInfo{	if?(listInfo.eventType?==?ChatClickEventTypeTEXT){		//?點擊的文本
		listInfo.clickedText
		//?點擊的文字位置??防止有相同的可點擊文字
		listInfo.range
		//?被點擊文本的隱藏信息???e.g.??
		listInfo.clickedTextContent
	}?else?if?(listInfo.eventType?==?ChatClickEventTypeIMAGE){		//?圖片
		listInfo.image
		//?圖片在tableview中的位置
		listInfo.msgImageRectInTableView
	}
}

?

TODO

  • 自定義消息內容匹配

?

ui 組件 視圖
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1新一代網絡可視化(NPB 2.0)
  2. 3.40 MB  |  1次下載  |  免費
  3. 2冷柜-電氣控制系統講解
  4. 13.68 MB   |  1次下載  |  10 積分
  5. 3MDD品牌三極管MMBT3906數據手冊
  6. 2.33 MB  |  次下載  |  免費
  7. 4MDD品牌三極管S9012數據手冊
  8. 2.62 MB  |  次下載  |  免費
  9. 5LAT1218 如何選擇和設置外部晶體適配 BlueNRG-X
  10. 0.60 MB   |  次下載  |  3 積分
  11. 6LAT1216 Blue NRG-1/2 系列芯片 Flash 操作與 BLE 事件的互斥處理
  12. 0.89 MB   |  次下載  |  3 積分
  13. 7收音環繞擴音機 AVR-1507手冊
  14. 2.50 MB   |  次下載  |  免費
  15. 8MS1000TA 超聲波測量模擬前端芯片技術手冊
  16. 0.60 MB   |  次下載  |  免費

本月

  1. 1愛華AIWA HS-J202維修手冊
  2. 3.34 MB   |  37次下載  |  免費
  3. 2PC5502負載均流控制電路數據手冊
  4. 1.63 MB   |  23次下載  |  免費
  5. 3NB-IoT芯片廠商的資料說明
  6. 0.31 MB   |  22次下載  |  1 積分
  7. 4UWB653Pro USB口測距通信定位模塊規格書
  8. 838.47 KB  |  5次下載  |  免費
  9. 5蘇泊爾DCL6907(即CHK-S007)單芯片電磁爐原理圖資料
  10. 0.04 MB   |  4次下載  |  1 積分
  11. 6蘇泊爾DCL6909(即CHK-S009)單芯片電磁爐原理圖資料
  12. 0.08 MB   |  2次下載  |  1 積分
  13. 7100W準諧振反激式恒流電源電路圖資料
  14. 0.09 MB   |  2次下載  |  1 積分
  15. 8FS8025B USB的PD和OC快充協議電壓誘騙控制器IC技術手冊
  16. 1.81 MB   |  1次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935137次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
  4. 1.48MB  |  420064次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233089次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費下載
  8. 340992  |  191439次下載  |  10 積分
  9. 5十天學會AVR單片機與C語言視頻教程 下載
  10. 158M  |  183353次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81602次下載  |  10 積分
  13. 7Keil工具MDK-Arm免費下載
  14. 0.02 MB  |  73822次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65991次下載  |  10 積分