SWRevealViewController nib单元格不执行segue

时间:2015-11-19 21:40:39

标签: ios swift uitableview uiviewcontroller swrevealviewcontroller

简单地说,我的应用程序中有一个幻灯片导航视图控制器,带有后台VC和前台VC。应该将后表VC中的所选单元划分到前表VC(嵌入在导航VC中)。为了说明,以下是隔离的更改前设置和代码,使其正常工作:

enter image description here enter image description here enter image description here

以下是我的后台VC cellForRowAtIndexPath方法中的简化工作代码:

    override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let navigationCell = tableView.dequeueReusableCellWithIdentifier("NavigationCell", forIndexPath: indexPath) as UITableViewCell
    return navigationCell
}

好的,到有趣的部分。我想要的是用Xib文件中的一个自定义单元替换上面显示的默认UITableViewCell。现在我将说明我修改的内容。首先,这是我的NavigationCell.xib文件中的Xib单元格。没什么特别的。

enter image description here enter image description here

我的NavigationCell班级代码只是

import UIKit

class NavigationCell: UITableViewCell {
    @IBOutlet var nameLabel: UILabel!
}

最后,我修改了我的后台VC中的代码以注册Xib并将自定义单元格出列:

override func viewDidLoad() {
    super.viewDidLoad()
    let navigationCellNib = UINib(nibName: "NavigationCell", bundle: nil)
    tableView.registerNib(navigationCellNib, forCellReuseIdentifier: "NavigationCell")
}

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let navigationCell = tableView.dequeueReusableCellWithIdentifier("NavigationCell", forIndexPath: indexPath) as! NavigationCell
    return navigationCell
}

所有其他代码和规格保持不变。新自定义单元格的故事板segue仍然来自类SWRevealViewControllerSeguePushController,如此问题的第一个屏幕截图所示。我只是用我的自定义Xib单元格替换了默认的UITableViewCell。

这种修改足以阻止segue的发生。通过这个修改,在我构建并运行后,当我滑出后台VC导航菜单并选择我的一个自定义导航单元(正确显示)时,它不会触发任何segue。有什么想法吗?

0 个答案:

没有答案