ios - SWRevealViewController 从 subview 推送

标签 ios objective-c xcode swrevealviewcontroller

我有一个 LoginView,登录成功后我正在加载 Slideout 菜单 View (SWRevealViewController)。

我正在使用以下内容加载带有前 View (仪表板)和后 View (slidebarView)的显示 View Controller !

 AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];

                UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];

                SWRevealViewController *viewController1 = (SWRevealViewController *)[mainStoryboard instantiateViewControllerWithIdentifier:@"next"];

                [appDelegate.window setRootViewController:viewController1];

enter image description here

在后 View 中我们有菜单(约会、我的造型师、理发师、定位我和设置)。

在设置中我们有 3 个选项和 3 个不同的 View Controller 。当我从 settingsViewController 推送到 generalViewController 时,它会加载登录 View Controller 的方法!

我正在用它来插入!

- (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 中的所有方法都被调用了!

请帮我解决这个问题。如何从 revealViewController 的 frontViewController 推送 viewController?

提前致谢!

最佳答案

请按照以下步骤操作: 假设从侧面菜单中,用户选择设置选项,然后在 Settingviewcontroller 的 viewDidLoad 方法中编写以下代码。

同时导入 SWRevealViewcontroller.h *注意 - 侧边栏按钮(三行图像)

//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];

关于ios - SWRevealViewController 从 subview 推送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32115308/

相关文章:

ios - iOS 硬件上的(立方体贴图)纹理采样器数量

iOS iPad 如何使用 UIActionSheet 创建 UIPopoverController?

c++ - C++错误 “_main”,引用自:“Xcode

objective-c - 多少内存泄漏(以字节为单位)可能是致命的

objective-c - 如何让 iAd 在我的应用程序中被全局查看?

iphone - 在 iOS 上,更改 UIView 对象的框架和中心可以改变其内部坐标系吗?

ios - 使用 Core Bluetooth 时出现问题

ios - 如何在 UIView subview 中应用自动布局 NIB 实例

ios - 如何按顺序从字典中获取所有值

arrays - Swift:2 个类似错误:无法使用 'x' 类型的参数列表调用 '(([xx]) -> ())'