Обновлен ответ. Поскольку вы хотите найти самый верхний видимый контроллер, вы можете использовать любой из этих двух методов. Вызовите этот метод из контроллера представления, в котором вы находитесь в данный момент, передав контроллер UINavigation в качестве параметра.
func topMostViewController(controller:UINavigationController) -> UIViewController {
return controller.topViewController!
}
func visibleViewController(controller:UINavigationController) -> UIViewController {
return controller.visibleViewController!
}