2013-07-24 10 views
0

Я работаю через учебник, который демонстрирует facebook/путь левой руки СЧАоживляющий другой ViewController раскадровки сцена программно

http://hsapkota.com.au/index.php/blog/ios-iphone-ipad/28-tutorial-creating-gmail-facebook-like-menu-navigation-in-ios

Все работает, как ожидалось, однако я хотел бы добавить тесную навигационную кнопку в навигационная таблица, но я не могу стрелять тот же метод, или получить доступ к раскадровке сцены из навигационного класса

это пример так я пытался выполнить задание

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{ 

    NSString * storyboardName = @"MainStoryboard_iPhone"; 
    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:storyboardName bundle: nil]; 

UINavigationController * vc = [storyboard instantiateViewControllerWithIdentifier:@"main"]; 



[UIView animateWithDuration:0.2f 
         delay:0.0 
        options:UIViewAnimationCurveLinear 

       animations:^{ 

        CGAffineTransform trans = CGAffineTransformMakeTranslation(200.0, 0.0); 


        vc.view.transform= trans; 
       } 
       completion:^(BOOL finished){ 

       } 
]; 

} 

«main» - это storyboardID, который я хотел бы оживить, однако при выполнении NSLog на «vc.navigationController» я получаю возврат NULL, хотя ведение журнала «vc» возвращает имя класса, связанное с правильной раскадрой scene

Любая помощь будет оценена Я просто не могу обнять ее вокруг!

-edit Я думал, что я был в состоянии изменить «основной вид», призывающую SuperView в моей трансформации self.view.superview.transform = транс

однако это воодушевляет как viewcontrollers, а также оказывает «основной вид» бесполезно, так как без жестов tap реагируют на это мнение сейчас ...

Любые дальнейшие мысли?

+0

Вы не должны создавать экземпляр нового контроллера, вы должны взаимодействовать с существующим (возможно, с контроллером представления). – Wain

+0

Спасибо! любые идеи, как я буду заниматься этим? если я создаю экземпляр класса, ответственного за основную сцену, любые попытки доступа к свойствам self.navigationController (даже метод, настроенный для его возврата) отображаются как null при создании экземпляра из класса nav – user499846

ответ

0

Хорошо после того, как много faffing о мне удалось получить что-то, чтобы работать

мне нужно связаться с AppDelegate для того, чтобы получить доступ к другим ViewController в контексте

мой код теперь

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{ 

AppDelegate* appDel = (AppDelegate*)[[UIApplication sharedApplication] delegate]; 
MainView *mv = (MainView *)appDelegate.window.rootViewController; 


[UIView animateWithDuration:0.2f 
         delay:0.0 
        options:UIViewAnimationCurveLinear 

       animations:^{ 

        CGAffineTransform trans = CGAffineTransformMakeTranslation(-0.0, 0.0); 

        mv.view.transform= trans; 
       } 
       completion:^(BOOL finished){ 


       } 
]; 

}

Смежные вопросы