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

问题如题,我从网上下载了一个自定义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会变得特别丑。

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

阅读 6.8k
3 个回答

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

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

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题