在整个应用程序中保持UIView始终在顶部



我想在我的iphone应用程序中创建一个全局导航视图(如ios通知视图),这将显示在从应用程序的任何屏幕上向下滑动。我在UIWindow上添加了一个子视图UIViewController.View,以实现UIWindow上的UISwipeGesture,并且它正在按预期工作。无论何时何地在应用程序中检测到滑动手势,都会显示视图。

问题是,当执行其他手势时,它会出现。我想设置在屏幕顶部的全局菜单的滑动效果。我该怎么做呢?

设置手势识别器的委托并实现gestureRecognizer:shouldReceiveTouch:只检测屏幕顶部的触摸:

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch{
  CGPoint location = [touch locationInView:touch.window];
  BOOL touchedOnTop = location.y < 60;
  return touchedOnTop;
}

我猜你已经这样做了,但你也应该设置UISwipeGestureRecognizer的方向为UISwipeGestureRecognizerDirectionDown

如果你的应用程序支持多个界面方向,就需要做一些额外的工作。

相关内容

  • 没有找到相关文章

最新更新