didSelectRowAtIndexPath в reveViewController

Я работаю с revealViewControllerи внутри этого раскрытия ViewController я хотел создать UITableView с пользовательскими ячейками в соответствии с этим руководством: https://www.youtube.com/watch?v=EVJiprvRLoo

и вот мой код:

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
let vcName = identities[indexPath.row]
let viewController = storyboard?.instantiateViewControllerWithIdentifier(vcName)
self.navigationController?.pushViewController(viewController!, animated: true)
}

Я использую раскадровку, но у меня не возникло проблем, но она не работает.

Я также пытался выполнить push-переход к этому контроллеру представления, но затем мой navigationViewController исчезает, и я думаю, что это будет проще с использованием кода.

Извините, если мой вопрос не точный, но надеюсь, что вы понимаете это.

Большое спасибо.

2 ответа

Решение

Ваш self.navigationController? ноль Вы должны сделать что-то вроде этого:

let vcName = identities[indexPath.row]
let viewController = storyboard?.instantiateViewControllerWithIdentifier(vcName)
let navVC = UINavigationController(rootViewController:viewController)

а затем установить контроллер вид спереди методом SWRevealViewController:

- (void)pushFrontViewController:(UIViewController *)frontViewController animated:(BOOL)animated;

self.revealViewController.pushFrontViewController(navVC, animated:true)

Вы должны нажать на RevealController, а не на ViewController

Другие вопросы по тегам