SWRevealViewController 从子视图推送 [英] SWRevealViewController push from subview
问题描述
我有一个 LoginView,登录成功后我正在加载 Slideout 菜单视图 (SWRevealViewController).
I have a LoginView and in success of login I am loading Slideout menu view (SWRevealViewController) .
我正在使用以下内容加载带有前视图(仪表板)和后视图(slidebarView)的显示视图控制器!
I am using the following to load reveal view controller with front view(Dashboard) and rear view (slidebarView) !
AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
SWRevealViewController *viewController1 = (SWRevealViewController *)[mainStoryboard instantiateViewControllerWithIdentifier:@"next"];
[appDelegate.window setRootViewController:viewController1];
在后视图中有菜单(约会、美发师、理发师、定位我和设置).
In Rear view where we have menu (Appointments, mystylist ,Barbers , Locate me and Settings ) .
在设置中,我们有 3 个选项和 3 个不同的视图控制器.当我从 settingsViewController 推送到 generalViewController 时,它会加载登录视图控制器的方法!
In Settings we have 3 option and 3 different view controller . When i am pushing from settingsViewController to generalViewController, it loads login view controller's method !
我用这个来推!
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
NSLog(@"%@",[List objectAtIndex:indexPath.row]);
//
if (indexPath.row==0) {
UIStoryboard * storyboard = self.storyboard;
generalViewController * detail = [storyboard instantiateViewControllerWithIdentifier:@"General"];
[self.navigationController pushViewController: detail animated: YES];
}
}
因此,loginViewController 中的所有方法都被调用了!
Because of this , all method in loginViewController is being called !
请帮我解决这个问题.如何从revealViewController的frontViewController推送一个viewController?
Please help me out of this problem . How to push a viewController from frontViewController of revealViewController ?
提前致谢!
推荐答案
请按照以下步骤操作:假设从侧边菜单中,用户选择设置选项,然后在 Settingviewcontroller 的 viewDidLoad 方法中编写以下代码.
Follow these steps : suppose From side menu ,user select setting option then write following code in viewDidLoad method of Settingviewcontroller .
同时导入 SWRevealViewcontroller.h*注意 - 侧边栏按钮(三行图像)
Also import SWRevealViewcontroller.h *Note - Side bar button ( a three line image )
//setting side Button Action
SWRevealViewController *revealVC = self.revealViewController;
if (revealVC) {
[sideBarButton addTarget:self.revealViewController action:@selector(revealToggle:) forControlEvents:UIControlEventTouchUpInside];
[self.view addGestureRecognizer:self.revealViewController.panGestureRecognizer];
}
//show Setting View Screen
SWRevealViewController *svc = self.revealViewController;
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
UIViewController *homeVC = [storyboard instantiateViewControllerWithIdentifier:@"settingVC"];
[svc setFrontViewController:homeVC animated:NO];
[svc revealToggleAnimated:YES];
这篇关于SWRevealViewController 从子视图推送的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!