IOS開發(fā)仿微信消息長按氣泡菜單實現(xiàn)效果
正文
話不多說,直接上效果圖
使用方法
導入項目
將SJPopMenu
文件夾拖入到工程或者使用pod導入工程
pod 'SJPopMenu'
這個組件降低與原工程的耦合度,幾乎不需要改動原工程代碼。
使用
- 顯示: [[SJPopMenu menu] showBy:xxxxxx]
- 需實現(xiàn) SJCustomSelectTextView 里面方法,如果是自定義textView,只需將 SJCustomSelectTextView 的父類改為項目使用的textView即可
- controller中需實現(xiàn)3個方法并且發(fā)送通知,使?jié)L動時正確顯示menu
- (void)scrollViewDidScroll:(UIScrollView *)scrollView{ [[NSNotificationCenter defaultCenter] postNotificationName:@"SJChangePopMenuIfNeeded" object:nil]; } - (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView { [[NSNotificationCenter defaultCenter] postNotificationName:@"SJShowPopMenuIfNeeded" object:nil]; } - (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate { if (!decelerate) { [[NSNotificationCenter defaultCenter] postNotificationName:@"SJShowPopMenuIfNeeded" object:nil]; } }
- 點擊menu action回調使用 menu.itemActions
對比微信實現(xiàn)效果
1、長按自動選擇所有文本 ?
2、選中部分文字增加全選功能 ?
3、選中部分文字目前支持 復制 轉發(fā) 都要用選中部分文本 ?
4、亂拖選中文本 menu位置要變化(手松開才顯示menu好像做不到,改成menu位置實時變化)? ?
5、拖動當前cell滑動隱藏menu,停止滑動顯示menu (改成滑動就隱藏menu)?
6、微信顯示menu時,再收到消息暫時不顯示新消息,menu消失時新消息才出來(改成接收新消息滑動,取消menu。微信只要按住聊天頁面,新消息都不會馬上刷新出來,感覺這個需要耦合度較高,所以未做)?
7、長按顯示菜單 再長按 過程 菜單取消 手指松開 微信選中一部分 (改成手指松開,還是全選) ?
8、顯示菜單 有時點其他區(qū)域 textView還是全選中狀態(tài) ??? 這是個bug??! 偶現(xiàn) 愁人ing…… ?
點擊紅色區(qū)域,menu不會消失,目前沒有好方法。
以上就是IOS開發(fā)仿微信消息長按氣泡菜單實現(xiàn)效果的詳細內容,更多關于OS 消息長按氣泡菜單的資料請關注腳本之家其它相關文章!
相關文章
IOS中NSPredicate和NSRegularExpression校驗正則表達式區(qū)別
本文文章通過實例代碼給大家講述了在IOS開發(fā)中NSPredicate和NSRegularExpression校驗正則表達式區(qū)別,需要的朋友趕快學習下吧。2018-01-01iOS開發(fā)項目- 基于WebSocket的聊天通訊(2)
這篇文章主要介紹了iOS開發(fā)項目- 基于WebSocket的聊天通訊,可以實現(xiàn)錄音和音樂播放,有需要的可以了解一下。2016-11-11解決蘋果ios用js的Date()出現(xiàn)NaN的問題
下面小編就為大家分享一篇解決蘋果ios用js的Date()出現(xiàn)NaN的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-03-03