2017-08-27 48 views
0

我是很新的应用程序开发(有编码的背景虽然)与斯威夫特3和的Xcode 8.3.3。我发现了一些Objective-C的答案,我不太明白,也不知道如何在Swift中实现它。斯威夫特3:UISwipeGestureRecognizer工作在查看但不能在ViewContainer

这是我有:

  1. Document Outline, Storyboard & Connections
  2. the OnboardingViewController Class

它能做什么

swipeOnView方法的工作原理就像一个魅力,我知道这是正确的,因为“2。文档大纲“作为”容器视图“是视图的子项,并且不会接受手势

但是:只要”容器视图“覆盖(或者应该 - 由于测试它是高度的一半)整个屏幕,它似乎阻止UIView接收手势 - >这两种方法都呈现无用 - >哪一个,再次...是正确的,我有种得到它

我想要它做什么

我想要swipeOnContainerView方法工作,但我无法弄清楚如何告诉控制器只“听”t o容器的视图手势并忽略“父”UIView。

回答

0

我能够通过自己看着办吧,这里是如何:

第1步:添加一个插座每个GestureRecognizer即@IBOutlet VAR swipeLeftGestureRecognizer:UISwipeGestureRecognizer!

步骤2:在viewDidLoad中()添加委托用于每个出口即swipeLeftGestureRecognizer.delegate =自

步骤3:改变的返回值FUNC gestureRecognizer(_ gestureRecognizer:UIGestureRecognizer,shouldRecognizeSimultaneouslyWith otherGestureRecognizer:UIGestureRecognizer)到真

步骤4:将引用出口连接到的UIView /子视图问题

步骤5:添加IBActions到每个GestureRecognizer

完成