我有一个使用SWReveal控制器的项目,但是,当用户从菜单中选择项目时,所有应用程序正在执行的操作是刷新前视图控制器上的数据,这意味着永远不会调用新的视图控制器,因此后视永远不会被解雇。
如何手动关闭后视控制器? 因此,当用户点击菜单项时,我希望后视图消失并再次被前视图替换。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
UIStoryboard *storyboard;
storyboard = [UIStoryboard storyboardWithName:@"Main_iPad" bundle:nil];
NSString *SelectedRow = [self.menuItems objectAtIndex:indexPath.row];
if([[SelectedRow valueForKey:@"name"]isEqualToString:@"title"]){
//Main Menu
[self performSegueWithIdentifier:@"unwindToMenu" sender:self];
}
else
{
NSMutableDictionary *data = [[NSMutableDictionary alloc] init];
[data setObject:[SelectedRow valueForKey:@"name"] forKey:@"name"];
[data setObject:[SelectedRow valueForKey:@"jobNumber"] forKey:@"jobNumber"];
[data setValue:[NSString stringWithFormat:@"%d", (indexPath.row -1)] forKey:@"indexNumber"];
[[NSNotificationCenter defaultCenter] postNotificationName:@"menuFormSelected" object:nil userInfo:data];
}
}
答案 0 :(得分:0)
我不是100%确定你要求的是什么,从我的理解你想要在菜单按钮上单击拖动菜单,所以这是以编程方式执行此操作的最简单方法。
允许panGeture(拖动菜单)。
SWRevealViewController *revealController = self.revealViewController;
[self.view addGestureRecognizer:revealController.panGestureRecognizer];
要允许返回菜单,请单击添加到菜单按钮。
[button addTarget:revealController action:@selector(revealToggle:)forControlEvents:UIControlEventTouchUpInside];