Как я могу нажать контроллер представления с идентификатором раскадровки, используя LGSideMenuController?

Мне нужно нажать на контроллер подробного представления, когда я нажимаю на ячейку таблицы, используя идентификатор раскадровки. Я уже разработал контроллер представления. Теперь мне нужно перейти к разработанному экрану, нажав ячейку табличного представления в левом меню. Я использую LGSideMenuController.

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
if (indexPath.row == 0) {

    ProfileViewController *profileVC = (ProfileViewController*)[mainStoryboard instantiateViewControllerWithIdentifier:PCProfileVC];
    [self.leftMenuVC navigateToViewController:@"profileVC"];
}}

-(void)navigateToViewController:(UIViewController*)viewController{


[(UINavigationController *)[self sideMenuController].rootViewController pushViewController:viewController animated:YES];
[[self sideMenuController] hideLeftViewAnimated:YES completionHandler:nil];}

Пожалуйста, помогите мне сделать. Спасибо


person Sakthi    schedule 03.08.2016    source источник
comment
Что такое sideMenuController, это класс UINavigationController???   -  person Sanchit Kumar Singh    schedule 03.08.2016
comment
sideMenuController — это метод из LGSideMenuController.   -  person Sakthi    schedule 03.08.2016


Ответы (2)


Почему вы нажимаете viewController в rootViewController. Если этот фрагмент кода прописан в вашем ViewController.m, то попробуйте заменить,

[(UINavigationController *)[self sideMenuController].rootViewController pushViewController:viewController animated:YES];

с участием

[[self sideMenuController].rootViewController.navigationController pushViewController:viewController animated:YES];

Если ваш идентификатор PCProfileVC правильный, то этот код должен работать.

Пожалуйста, ознакомьтесь с этим ссылка для получения информации об отправке ViewController в UINavigationController.

person Sanchit Kumar Singh    schedule 03.08.2016

Попробуйте этот код:

YourViewControllerClass *viewController = [[UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil] instantiateViewControllerWithIdentifier:@"ViewController"];
 // instanciate your viewcontroller 
    [(UINavigationController *)[self sideMenuController].rootViewController pushViewController:viewController animated:YES]; //push your viewcontroller 
    [[self sideMenuController] hideRightViewAnimated:YES completionHandler:nil]; //hide the menu 
person MedAmine.Rihane    schedule 03.08.2016
comment
У меня не возникает никаких ошибок или сбоев, но я не вижу, чтобы перемещаться по соответствующему экрану. Я использую LGSideMenuController из github. - person Sakthi; 03.08.2016