我想檢測菜單何時關閉。我發現這個解決了question。在接受答案的評論,他們說,這種方法:MMDrawerController:檢測菜單關閉操作或刷卡手勢
-(void)setGestureCompletionBlock:(void(^)(MMDrawerController * drawerController, UIGestureRecognizer * gesture))gestureCompletionBlock;
必須在App delegate
,以通知當菜單關閉。我把這個函數放在我的應用程序委託中,在它的實現中,我做了一個NSLog(@"menu closed");
,但是在我的控制檯中沒有打印任何內容,並且在關閉菜單時該功能未被觸發。
任何人都可以解釋我請如何檢測菜單是否關閉? (根據給定的答案,或者如果您有其它的)
編輯:
在故事板,我有鏈接到其類型的MMDrawerController(myVCMMdrawerController
)的UIViewController的一個UINavigationController的,那麼我也myCenterVC
,leftVC
和rightVC
。在myVCMMdrawerController
viewDidLoad
這是我做的:
MyCenterVC * centerVC = [[self storyboard] instantiateViewControllerWithIdentifier:@"myCenterVC"];
centerVC.drawerController = self;
LeftVC * leftVC = [[self storyboard] instantiateViewControllerWithIdentifier:@"leftVC"];
leftVC.drawerController = self;
self.centerViewController = centerVC;
self.leftDrawerViewController = leftVC;
self.showsShadow = false;
//[self setMaximumLeftDrawerWidth:[UIScreen mainScreen].bounds.size.width animated: true completion: nil];
//enable gesture
self.openDrawerGestureModeMask = MMOpenDrawerGestureModeAll;
self.closeDrawerGestureModeMask = MMCloseDrawerGestureModeAll;
[self closeDrawerAnimated:NO completion:nil];
在myCenterVC
我做出的行動來顯示這樣的IBActions菜單:
[self.drawerController toggleDrawerSide:MMDrawerSideLeft animated:true completion:nil];
能否請您提供'客觀C'版本? –
@Llg您好我更新Objective-C解決方案 –
謝謝!如果我在UIViewController中創建抽屜會怎麼樣?在應用程序委託我創建了MMDrawerController * mainDrawer作爲屬性,然後在我的UIViewController中,我將這個mainDrawer設置爲UIViewController中的一個。但似乎沒有設置mainDrawer。請問你有關於這個問題的想法嗎?再次感謝 –