滚动时重复播放tableview数据

时间:2016-08-28 09:42:57

标签: ios swift uitableview uitextfield

我使用自定义单元格显示placeholder,但滚动表格会重复placeholder

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCellWithIdentifier("cell") as! AddTableViewCell

    cell.textInfo.delegate = self
    if textPlaceHolders![indexPath.row].containsString("Category") == true {
        cell.selected = true
        cell.textInfo.text = textPlaceHolders![indexPath.row]
        cell.accessoryType = .DisclosureIndicator
    } else {
        cell.textInfo.placeholder = textPlaceHolders![indexPath.row]
    }
    return cell
}

我尝试了一些这样的解决方案,问题已解决,但当用户结束编辑时,文字消失

class AddTableViewCell: UITableViewCell {

  @IBOutlet weak var textInfo: UITextField!

  override func prepareForReuse() {
     textInfo.text= ""
  }

}

1 个答案:

答案 0 :(得分:1)

在您的情况下,您在一个案例中为单元格var townApp = angular.module('townApp', ["ngRoute"]); townApp.config(function($routeProvider){ $routeProvider .when("/dashboard", { templateUrl : "/profile/dashboard/" }) .when("/payments", { templateUrl : "/profile/payments/", }) .otherwise( /* DO NOTHING.*/ ) }); 商店分配text属性,在另一个案例中分配textInfo。由于placeholder的重用政策,即使您没有为具体UITableView指定占位符/文本,textInfo也包含占位符/文字。因此,如果您不想要它们,则需要为每个indexPath清理它。像这样:

indexPath