// // CustomNavigationController.m // DUREX test // // Created by Imanol Barba on 8/7/14. // Copyright (c) 2014 Emmoco. All rights reserved. // #import "CustomNavigationController.h" @interface CustomNavigationController () @end @implementation CustomNavigationController - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil { self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; if (self) { // Custom initialization } return self; } - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } - (UIViewController *)popViewControllerAnimated:(BOOL)animated { if(self.auxController == nil) { NSLog(@"[CustomNavigationController.m]: WARNING: No Auxiliar Controller assigned to Navigation controller"); return [super popViewControllerAnimated:animated]; } else { NSLog(@"[CustomNavigationController.m]: Navigation Stack has %d remaining levels",[[[self auxController] parentLayout] count]); if([[[self auxController] parentLayout] count] > 0) { NSLog(@"[CustomNavigationController.m]: Falling to previous navigation level"); [[self auxController] navBack]; } else { NSLog(@"[CustomNavigationController.m]: No more navigation levels in stack, falling to previous view"); self.auxController = nil; return [super popViewControllerAnimated:animated]; } } return nil; } /*- (void) setAuxController:(MenuTableViewController *)controller { self.auxController = controller; }*/ /* #pragma mark - Navigation // In a storyboard-based application, you will often want to do a little preparation before navigation - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { // Get the new view controller using [segue destinationViewController]. // Pass the selected object to the new view controller. } */ @end