我正在使用2个豆荚。

MMDrawerController 0.5.1WYPopoverController 0.1.7

现在我想在MMView上制作一个WYPopover

一些照片:

这就是MMController的样子(游乐场)



现在我想在任何地方触摸它,并使它看起来像:



错误:如果我想从“ MMController”打开左视图,有时会得到以下信息:



但它看起来应该像(左MMControllerView)



我正在使用2种方法:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
// show the popoverController
}
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
    [popController dismissPopoverAnimated:NO];
}


我的问题:为什么touchesMoved不是连续的?是否有更好的方法?

最佳答案

我对您提到的“吊舱”一无所知(CocoaPods?),但是,区分轻击和拖动的最直接方法是使用一对手势识别器,一个轻击手势识别器和一个平移手势识别器并进行设置向上轻击手势识别器,以便平移手势必须在触发轻击之前失败(手势识别器中内置了“等待另一个手势识别器失败”机制。)

我建议阅读UIGestureRecognizer以及UITapGestureRecognizer和UIPanGestureRecognizer的特定类

10-06 15:18