我正面临着一个小小的问题,因为无法解决问题而感到头疼......
我有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
错位在每个单元格上。
不能理解为什么这样做..
任何帮助将不胜感激..提前致谢..
答案 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];