0

我正在使用情节提要构建一个应用程序。我正在使用 MFSidemenu 库来创建像 facebook 应用程序这样的侧边菜单。侧边菜单正确显示,但是当我点击侧边菜单上的单元格时,菜单不会消失,也不会加载另一个视图控制器。请注意,我正在使用情节提要。

谢谢你。

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



UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:[NSBundle mainBundle]];
AlbumsTableVIewController *AlbumsViewController = [storyboard instantiateViewControllerWithIdentifier:@"Albums"];

AlbumsViewController.title=[NSString stringWithFormat:@"Demo Controller #%d-%d", indexPath.section, indexPath.row];


NSArray *controllers = [NSArray arrayWithObject:AlbumsViewController];
self.sideMenu.navigationController.viewControllers = controllers;
[self.sideMenu setMenuState:MFSideMenuStateClosed];

}
4

1 回答 1

3

你必须为你的MainMenu控制器实现委托方法,因为如果你像上面那样放置你的代码,它会改变你的 sideMenu 而不是你的MainMenu。我在这里使用故事板。这是我的代码MainMenuController

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:[NSBundle mainBundle]];
UINavigationController *navigationController = (UINavigationController *)self.navigationController;

UIViewController *leftSideMenuViewController = [storyboard instantiateViewControllerWithIdentifier:@"leftSideMenuViewController"];
UITableViewController *SideMenu=(UITableViewController *)leftSideMenuViewController;
SideMenu.delegate=self; //here is the delegate
[MFSideMenu menuWithNavigationController:navigationController
                  leftSideMenuController:SideMenu
                 rightSideMenuController:nil];

所以你需要viewController从这里连接你的,通过委托模式导航。

于 2013-04-08T04:14:33.960 回答