Swift 禁用单元格滑动操作

Swift 禁用单元格滑动操作,swift,uitableview,tableviewcell,edit-tableview,Swift,Uitableview,Tableviewcell,Edit Tableview,所以我有一个应用程序(用Swift编写),允许用户在searchController中搜索高尔夫球场。然后,他们可以选择该课程,然后所选课程进入表格视图。我对搜索控制器和所选课程列表使用相同的视图控制器 我遇到的问题是,我希望用户能够滑动以删除其选定的课程,但不能删除在搜索控制器处于活动状态时填充的课程。“滑动以删除”操作在常规tableView中起作用。当searchController处于活动状态时,我将其设置为禁用“删除”按钮。但我想做的是,如果searchController处于活动状态

所以我有一个应用程序(用Swift编写),允许用户在searchController中搜索高尔夫球场。然后,他们可以选择该课程,然后所选课程进入表格视图。我对搜索控制器和所选课程列表使用相同的视图控制器

我遇到的问题是,我希望用户能够滑动以删除其选定的课程,但不能删除在搜索控制器处于活动状态时填充的课程。“滑动以删除”操作在常规tableView中起作用。当searchController处于活动状态时,我将其设置为禁用“删除”按钮。但我想做的是,如果searchController处于活动状态,则单元格根本无法滑动。似乎不能让它工作。有什么建议吗?谢谢你

这是我的密码:

 override func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath) {

    if searchController.active {

    UITableViewCellEditingStyle.None

    } else {

    let deletedValue = previousCoursesFromRealm[indexPath.row]

    if editingStyle == UITableViewCellEditingStyle.Delete {
        let realm = try! Realm()
        try! realm.write {
        realm.delete(deletedValue)
        }

     coursesTableView.reloadData()

     }
    }
   }  

我想你要找的方法是

在此方法中返回
false
将禁用刷卡操作。然后,可以将此值绑定到搜索控制器:

override func tableView(tableView: UITableView, canEditRowAtIndexPath indexPath: NSIndexPath) -> Bool {
    return !searchController.active
}

我想你要找的方法是

在此方法中返回
false
将禁用刷卡操作。然后,可以将此值绑定到搜索控制器:

override func tableView(tableView: UITableView, canEditRowAtIndexPath indexPath: NSIndexPath) -> Bool {
    return !searchController.active
}