您好,欢迎来到化拓教育网。
搜索
您的当前位置:首页MMDrawerController与UITableView的左

MMDrawerController与UITableView的左

来源:化拓教育网

前言

MMDrawerController是在github有着超高人气的抽屉式第三方,使用起来很方便,这里就不多说了,说一下我使用过成中遇到的问题

在UITableView种有左滑删除的需求,这个和MMDrawerController右滑打开菜单发生了冲突,导致左滑删除时灵时不灵
  • 思索再三,决定去MMDrawerController的头文件看一看,找找跟手势相关的代码,搜索GestureRecognizer相关代码发现了问题
-(MMOpenDrawerGestureMode)possibleOpenGestureModesForGestureRecognizer:(UIGestureRecognizer*)gestureRecognizer withTouch:(UITouch*)touch;

上面这段代码是打开侧边视图的手势代码,跳进去看看发现



-(BOOL)isPointContainedWithinCenterViewContentRect:(CGPoint)point
{  
  //这个是原来的代码:  手势区域是整个屏幕
//    CGRect centerViewContentRect = self.centerContainerView.frame; 
     
  //我们来修改下这句代码: 把触发打开抽屉手势识别放在屏幕左侧宽50,高为屏幕高度的rect中  
    CGRect centerViewContentRect = CGRectMake(0, 0, 50, self.centerContainerView.frame.size.height);  
  
    centerViewContentRect = CGRectIntersection(centerViewContentRect,self.childControllerContainerView.bounds);  
  
    return (CGRectContainsPoint(centerViewContentRect, point) &&  
  
            [self isPointContainedWithinNavigationRect:point] == NO);  
  
}  

然后cmd+r运行下,完美.

记录自己开发的点滴,努力成长. 加油!!!

Copyright © 2019- huatuo9.cn 版权所有 赣ICP备2023008801号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务