SWRevealViewController 从子视图推送 [英] SWRevealViewController push from subview

查看:42
本文介绍了SWRevealViewController 从子视图推送的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个 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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆