话不多说,直接上效果图

运用办法

导入项目

代码地址:github.com/shangjie119…

SJPopMenu文件夹拖入到工程或者运用pod导入github官网工程

pod 'SJPopMenu'

这个组件降低与原工程的耦合度,几乎不需求改动原工程代码。

运用

  1. 显现: [[SJPopMenu menu] showgithubBy:xxxxxx]
  2. 需完成 SJCustomSelectTextView 里面办法,假如是自定义textView,只需将 SJCustomSelectTextView 的父类改为项目运用的tegithub中文官网网页xtView即可
  3. cogithubntroller中需完成3个办法并且发送告诉,使翻滚时正确显现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];
    }
}
  1. 点击menu action回调运用 menu.itemGitHubActions

比照微信完成效果

1、长按主动挑选一切文本 ✅

2、选中部分文字增加全选github官网登陆入口功用 ✅

3、选中部分文字现在支持 复制转giticomfort是什么轮胎发都要git命令用选中部分文本 ✅

4、github中文官网网页乱拖选中文本menu位置要改变(手松开才显现menugithub中文社区好像做不到,改成menu位置实时改变)✅ ❌

5、拖动当时cell滑动隐藏menu,停止滑动显现menu (改成滑动就隐藏menu)✅

6、微信显现menu时,再收到音讯暂时不github是什么显现新音讯,menu消失时新音讯才出giticomfort是什么轮胎来(改成接纳新音讯滑动,撤销menu。微github开放私库信只需按住聊天页面,github新音讯都不会马上刷新出来,感觉这个需求耦合度较高,所以未做)✅

7、长按显现菜单 再长按 过程 菜单撤销 手指松开 微信选中一部分 (改成手指松开,还是全选) ✅

8、显现菜单 有时点其他区域 textView还是全选中状态 ??? 这是个bug!! 偶现 愁人ingithubg…… ❌

仿微信音讯长按气泡菜单

点击赤色区域,menu不会消失,现在没有好办法。

欢迎git命令沟通

假如对上gitlab面问题有处理思路,欢迎沟通。 能够通过githubissue我,或者给我邮件 494948246@qq.com

运用中假如有其他问题,也能够相互沟通。

最后再放个下载地址

喜欢的请给个小⭐git命令️⭐️!!!