我在我的项目中使用github link中的MFSideMenu。它正在工作,但是我想在某个viewcontroller中禁用它。
我在viewcontroller中添加了它,但它没有禁用panMode:
#import "MFSideMenuContainerViewController.h"
-(void) viewWillAppear:(BOOL)animated {
MFSideMenuContainerViewController *sideMenu = [[MFSideMenuContainerViewController alloc] init];
sideMenu.panMode = 0;
}
我的计划是在viewDidDisappear方法中重新启用panmode。
MFSideMenuContainerViewController.m
文件中的{/ 1}}如果我将self.panMode = 0;
添加到- (void)setDefaultSettings {self.panMode = 0;}
它会禁用菜单平移除外,当然会为整个应用禁用它。
我不能正确引用MFSideMenuContainerViewController
属性panmode。
在我的AppDelegate中:
·H
@property (nonatomic, strong) MFSideMenuContainerViewController *container;
的.m
MFSideMenuContainerViewController *container = [MFSideMenuContainerViewController
containerWithCenterViewController:self.navController
leftMenuViewController:nil
rightMenuViewController:rightSideMenuController];
self.window.rootViewController = container;
感谢您的帮助
答案 0 :(得分:12)
您可以在viewWillAppear
。
[self.menuContainerViewController setPanMode:MFSideMenuPanModeNone];
答案 1 :(得分:10)
有四种不同的MFSideMenuPanModes。
您可以尝试以下声明。
在AppDelegate.h中
@property (strong, nonatomic) MFSideMenuContainerViewController *container;
在AppDelegate.m中 - didFinishLaunchingWithOptions方法
self.container = [MFSideMenuContainerViewController
containerWithCenterViewController:[self navigationController]
leftMenuViewController:leftMenuViewController
rightMenuViewController:rightMenuViewController];
在View Controller中 - viewWillAppear方法。
AppDelegate *delegate = (AppDelegate *)[UIApplication sharedApplication].delegate;
delegate.container.panMode = MFSideMenuPanModeNone;