我有一个表格视图,它有一个自定义单元格类,它有 2 个标签和一个文本框
结果集将显示所有行的标签之一(名称),然后有一个 if else 语句来显示第二个标签或文本框。
示例
标签 1 标签 2
乔博客 学生
跑者 [TextBox]
等...
但是,当行滚动离开屏幕时,新行标签 2 不会被刷新并且有旧数据,但是标签 1 是完美的。
示例
标签 1 标签 2
joe blogs Student
road runner Student
等...
下面是代码片段
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
//let size = CGSizeMake(30, 30)
let cell = tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath) as! SBGestureTableViewCell
if strPaymentMethod[indexPath.row] == "Student" && dctMemAttEventDetails["StuDiscVenue"]! as! String == "Yes"
{
cell.txtMemberPaid.hidden = true
cell.lblPaymentMethod!.text = strPaymentMethod[indexPath.row]
}
else
{
cell.lblPaymentMethod.hidden = true
cell.txtMemberPaid.hidden = false
}
cell.lblMemberName!.text = strFirstname[indexPath.row] + " " + strSurname[indexPath.row] + " : " + strPaymentMethod[indexPath.row]
return cell
}
根据要求 2个屏幕截图
第二个屏幕截图显示了相同的信息,但正如您所看到的,例如,行(知道一切)应该是现金并且有文本框,但是它有一个标签,上面写着“学生”,在第一个屏幕截图上它是正确的(你会看到一些如果你往下看,第二个屏幕截图上的其他人不正确)
我知道这与单元格在滚动出屏幕时被重用有关,但数据没有被刷新,特别是 if/else 语句中的数据没有正确刷新/重绘。
我希望通过我正在努力实现的截图来清除您的问题/评论。如果不是,请发表评论并尝试用不同的方法来展示我的问题。如果您有任何进一步的问题,请告诉我,我会尽快回答
感谢您的任何帮助。