首页 > 解决方案 > Swift:仅从表中的某些行/部分中分离

问题描述

我的表中有两个部分,“曲目播放”和“下一个”。当用户点击“Up Next”中的一首歌曲时,他们会转换回同一个视图控制器,但他们点击的歌曲现在位于“Tracks Played”部分,“Up Next”部分根据歌曲的不同有不同的歌曲他们敲了敲。我的问题是用户不应该能够点击“曲目播放”部分中的歌曲,只能点击“下一个”部分中的歌曲。我已从“已播放曲目”部分中删除了选择动画和披露指示符,但从“已播放曲目”中点击一首歌曲仍会触发转场。我目前的创可贴解决方案是再次过渡到同一个屏幕,

总之,如何禁用表格中某些部分的 segue?

标签: iosswift

解决方案


您需要断开 segue 的源作为 tableview 单元格,将该 segue 重新连接到视图控制器作为源,并performSegueWithIdentifier在您点击表格的单元格时调用。

// MARK: UITableViewDelegate
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
    let cell = tableView.cellForRowAtIndexPath(indexPath)
    if shouldPerformSegue(indexPath.section) { //your logic
        self.performSegueWithIdentifier("your segue id", sender: cell)
    }
}

推荐阅读