【问题标题】:How can I push view controller with storyboard identifier using LGSideMenuController?如何使用 LGSideMenuController 推送带有情节提要标识符的视图控制器?
【发布时间】:2016-08-03 14:57:48
【问题描述】:

当我使用情节提要标识符点击表格视图单元格时,我必须推送详细视图控制器。我已经设计了视图控制器。现在我必须通过点击左侧菜单中的表格视图单元格导航到设计的屏幕。我正在使用 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];}

请帮我做。谢谢

【问题讨论】:

  • sideMenuController是什么,是UINavigationController类的吗???
  • sideMenuController 是来自 LGSideMenuController 的方法

标签: ios objective-c uitableview residemenu


【解决方案1】:

为什么要在 rootViewController 中推送 viewController。 如果这段代码 sn -p 是写在你的 ViewController.m 中的,那么尝试替换,

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

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

如果您的标识符 PCProfileVC 是正确的,那么这段代码应该可以工作。

有关在 UINavigationController 中推送 ViewController 的信息,请参阅此 link

【讨论】:

    【解决方案2】:

    试试这个代码:

    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 
    

    【讨论】:

    • 我没有收到任何错误或崩溃,但我的观点是不导航相应的屏幕。我正在使用来自 github 的 LGSideMenuController
    猜你喜欢
    • 2013-10-21
    • 1970-01-01
    • 2013-03-06
    • 2014-05-04
    • 1970-01-01
    • 2023-04-10
    • 2020-02-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多