我想防止在点击行时发生导航控制器搜索,但是想在点击附件按钮时搜索

时间:2019-06-06 17:55:33

标签: swift tableview segue

点击表格单元格时出现不必要的提示。我只想在点按附件按钮时进行搜索。当我点击单元格上的附件按钮时,当前代码有效。但是,如果我轻按内容视图,就会发生争吵,并且我的prepare(for:sender:)会失败,因为发件人不是IndexPath,而是TableViewCell。顺便说一句,包含TableView的视图位于导航控制器堆栈上。

我尝试取消选择表格视图单元格内容视图的“启用用户交互”设置,但这似乎也禁止了附件按钮。

这按预期工作

    func tableView(_ tableView: UITableView, accessoryButtonTappedForRowWith indexPath: IndexPath) {
        performSegue(withIdentifier: "ShowDetails", sender: indexPath)
    }

点击单元格时,将在调用prepare(for:sender :)之前调用它。

    func tableView(_ tableView: UITableView, didHighlightRowAt indexPath: IndexPath) {
        log.debug("didHightlightRowAt")/
    }

我不知道如何防止在窃听电池时发生粘连。当单元格调用prepare(for:sender:)时,出现此错误: 无法将类型'UITableViewCell'(0x11edbdaa0)的值强制转换为'NSIndexPath'(0x10e209cf8)。 2019-06-06 12:10:24.086845-0500 Earthquakers [1668:53901]无法将类型'UITableViewCell'(0x11edbdaa0)的值强制转换为'NSIndexPath'(0x10e209cf8)。

执行此代码时:

    override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
        if segue.destination is DetailViewController {
            let indexPath = sender as! IndexPath

(因为发送者是tableviewcell)

0 个答案:

没有答案