制作屏幕外可拖动视图(如iOS 5通知中心)

时间:2012-04-28 20:50:25

标签: objective-c cocoa-touch uigesturerecognizer uipangesturerecognizer notificationcenter

我想制作一个最初在屏幕左侧不可见的视图。当手指从屏幕的最左侧平移时,左侧出现并跟随手指。我的意思与iOS 5中的通知中心完全相同,但在左侧......

以下是我想要的照片:http://i.imgur.com/Bb6tC.png

我的问题是下面的视图上有一个滚动视图,PanGestures正在干扰......

我试图仅在定义的区域中捕获底层视图中的触摸:

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {

UIViewController *touchedVC = (UIViewController *)[gestureRecognizer.view nextResponder];  

CGPoint point = [touch locationInView:touchedVC.view]

if (point.x < SIDE_VIEWS_HANDLE_SIZE)) {
    return YES;
}

我还使用了委托方法

 - (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer

但是,我仍然不能让所有这些泛手势不要互相干扰......有什么想法吗? : - )

2 个答案:

答案 0 :(得分:3)

结帐ECSlidingViewController。他们已经为这种观点做了大量工作。

答案 1 :(得分:0)

我还必须将UIScrollView子类化以捕获其UIGestureRecognizer委托。