UITableViewCell重复UIView

时间:2014-04-09 08:13:20

标签: ios objective-c uitableview

我正面临着一个小小的问题,因为无法解决问题而感到头疼......

我有UITableView 自定义 UITableViewCell ..单元格的高度取决于文本的大小。当用户点击它时,翻译文本并将翻译后的文本以新行的形式附加到其上。为了让它们看起来分开,我添加了UIView lineView,其宽度与单元格的标签一样多height = 1

 UIView *lineView = [[UIView alloc] initWithFrame:CGRectMake(bubbleFrame.origin.x, bubbleFrame.origin.y + bubbleFrame.size.height/2, bubbleFrame.size.width, 1)];
                    lineView.backgroundColor = [UIColor whiteColor];
                    lineView.tag = indexPath.row;
                    [cell addSubview:lineView];

一切正常但当我导航回到viewController时,我发现lineView错位在每个单元格上。

不能理解为什么这样做..

任何帮助将不胜感激..提前致谢.. Image

1 个答案:

答案 0 :(得分:0)

在完成Mustafa Ibrahim的建议之后,我发现另一个问题similar problem ...所以感谢intropedro的答案问题解决了:)

使用dequeueReusableCellWithIdentifier

添加了此内容
        if (cell == nil) {
            cell = [[ChatCustomCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
        }
        else{
            [[cell.contentView viewWithTag:500] removeFromSuperview];
        }

并改变了我的lineView代码..

UIView *lineView = [[UIView alloc] initWithFrame:CGRectMake(bubbleFrame.origin.x, bubbleFrame.origin.y + bubbleFrame.size.height/2, bubbleFrame.size.width, 1)];
                    lineView.backgroundColor = [UIColor whiteColor];
                    lineView.tag = indexPath.row;
                    [cell addSubview:lineView];