温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

IOS uitableviewcell 左滑 自定义

发布时间:2020-06-18 16:09:59 来源:网络 阅读:1727 作者:zfajqp 栏目:移动开发

一 先继承 tableviewcell


二添加左滑右滑


    UISwipeGestureRecognizer *swipeLeft=[[UISwipeGestureRecognizer alloc] initWithTarget:selfaction:@selector(swipeCell:)];

    swipeLeft.direction=UISwipeGestureRecognizerDirectionLeft;

    [self addGestureRecognizer:swipeLeft];

    

    UISwipeGestureRecognizer *swipeRight=[[UISwipeGestureRecognizer alloc] initWithTarget:selfaction:@selector(swipeCell:)];

    swipeRight.direction=UISwipeGestureRecognizerDirectionRight;

    [self addGestureRecognizer:swipeRight];





三 实现左滑右滑功能



if (swipe.direction==UISwipeGestureRecognizerDirectionLeft) {

      __block CGPoint point=self.contentView.center;

        if (point.x>=(self.frame.size.width-self.swiftLeftLength)) {

            [self stepLeftView];

            [UIView animateWithDuration:0.15 animations:^{

                

                point.x=point.x-self.swiftLeftLength;

                self.contentView.center=point;

                

                UIView *leftView=[self viewWithTag:505];

                CGRect frame=leftView.frame;

                frame.origin.x=self.frame.size.width-self.swiftLeftLength;

                leftView.frame=frame;

            } completion:^(BOOL finished) {

                

            }];

            

            

        }

  

    }else if (swipe.direction==UISwipeGestureRecognizerDirectionRight){

      __block  CGPoint point=self.contentView.center;

        if (point.x<(self.frame.size.width-self.swiftLeftLength)) {

            

            [UIView animateWithDuration:0.15  animations:^{

                point.x=point.x+self.swiftLeftLength;

                self.contentView.center=point;

                

                UIView *leftView=[self viewWithTag:505];

                CGRect frame=leftView.frame;

                frame.origin.x=self.frame.size.width;

                leftView.frame=frame;

                

            } completion:^(BOOL finished) {

                

                [self removeLeftView];

                

            }]; 

        } 

    }



四添加左滑出来的视图

-(void)stepLeftView{

    UIView *leftView=[[UIView alloc] initWithFrame:CGRectMake(self.frame.size.width, 0, self.swiftLeftLength,self.frame.size.height)];

    leftView.tag=505;

    [leftView addSubview:self.leftContentView];

    [self addSubview:leftView];

}



五 解决cell重用机制导致的问题



- (void)prepareForReuse {

    [super prepareForReuse];

    [self reset];

}


demo 下载 http://download.csdn.net/detail/wjszf/7733277

IOS uitableviewcell 左滑 自定义

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI