ios 开发,UITableViewCell上的控件被其他的cell遮挡了?

发布于 2022-09-03 08:41:52 字数 1235 浏览 38 评论 0

问题如题,我从网上下载了一个自定义slider,正常情况下是这样的:
图片描述

当我将这个控件添加到UITableViewCell中(自定义的cell),弹出的那部分被上面的cell遮挡了:图片描述

在stackoverflow上看了看,大致有三种方法:
方法一,如下,不奏效。

    cell.frame = CGRectMake(0, 0, self.tableview.frame.size.width, 70);
    cell.contentView.frame = CGRectMake(0, 0, self.tableview.frame.size.width, 70);
            
    cell.opaque = NO;
    cell.contentView.opaque = NO;
            
    cell.clearsContextBeforeDrawing = NO;
    cell.contentView.clearsContextBeforeDrawing = NO;
            
    cell.clipsToBounds = NO;
    cell.contentView.clipsToBounds = NO;

方法二,将子视图提到顶层(个人感觉这个方法有戏,但是没成功),我从添加slider的弹出视图,一路向上层都调用了bringTo

    [slider bringSubviewToFront:self.popupView];
    [cell.contentView bringSubviewToFront:cell.sliderData];
    [cell bringSubviewToFront:cell.contentView];            
    [self.tableview bringSubviewToFront:cell];

方法三,设置cell的高度,让他有空就显示弹出视图。这是最能成功实现的方法,但是这样做我的UI会变得特别丑。

请问各位大神,遇到过这种情况吗?指点指点,非常感谢啊。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

浮生面具三千个 2022-09-10 08:41:53

//用这种方法可以将cell移到最顶层,应该就可以避免被其他cell遮盖了。
[self.view insertSubview:cell atIndex:MAXFLOAT];

风柔一江水 2022-09-10 08:41:52

如果把它放在cell里面,除了调整cell的高度,我想不到其他的办法了,一定要用tableview来做吗?

谁把谁当真 2022-09-10 08:41:52

同上,只不过你可以试试把几条滑条放在一个cell里。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文