我有带textfild的自定义单元格。
对于某些单元格,我需要通过单击禁用segue并启用文本字段进行编辑。我试着这样做:

    if indexPath.row<tests.count{
       cell.themeTextField?.text = test.name
       cell.themeTextField.enabled=false
    }
    else {
        cell.accessoryType = UITableViewCellAccessoryType.None
        cell.selectionStyle = UITableViewCellSelectionStyle.None;
        cell.userInteractionEnabled = false;
    }

Segue被禁用,但我无法在文本字段中键入文本

最佳答案

尝试另一种方法,
从tableCell中删除该段并从UITableViewController(从对象导航器而不是故事板中拖动它)创建一个新的段到下一个控制器-并给它命名(例如:DidSelectCellSegue)。
然后在didSelectRowAtIndexPath:delegate方法中,以编程方式有条件地执行segue。

func tableView(tableView: UITableView!, didSelectRowAtIndexPath indexPath: NSIndexPath!) {

    if conditionForPerformingSegueIsSatisfied {
        self.performSegueWithIdentifier("DidSelectCellSegue", sender: self)
    }
}

并将cellForRow代码更改为
if indexPath.row<tests.count{
   cell.themeTextField?.text = test.name
   cell.themeTextField.enabled=false
}
else {
    cell.accessoryType = UITableViewCellAccessoryType.None
    cell.selectionStyle = UITableViewCellSelectionStyle.None;
    cell.themeTextField.enabled = true;
}

10-08 06:12