Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 与位于模态视图下方的UIViewController交互_Ios_Swift_Uiviewcontroller_Swift3_Uipageviewcontroller - Fatal编程技术网

Ios 与位于模态视图下方的UIViewController交互

Ios 与位于模态视图下方的UIViewController交互,ios,swift,uiviewcontroller,swift3,uipageviewcontroller,Ios,Swift,Uiviewcontroller,Swift3,Uipageviewcontroller,我正在实现一个解决方案,而我有一个父级UIViewController,其中在viewdide()中以模态方式显示UIPageViewControllerUIPageViewController允许在3个viewcontroller之间滑动,而中间的viewcontroller的backgroundColor设置为UIColor。清除,以便我可以通过它看到第一个和父VC。这很有效,除了我无法与之互动之外 我所尝试的: 将空(占位符)viewcontroller的用户交互启用属性设置为false

我正在实现一个解决方案,而我有一个父级
UIViewController
,其中在
viewdide()中以模态方式显示
UIPageViewController
UIPageViewController
允许在3个viewcontroller之间滑动,而中间的viewcontroller的backgroundColor设置为
UIColor。清除
,以便我可以通过它看到第一个和父VC。这很有效,除了我无法与之互动之外

我所尝试的:

  • 将空(占位符)viewcontroller的用户交互启用属性设置为false
  • 以.overCurrentContext作为样式显示页面VC
  • 通过将pageVC作为子视图控制器添加到父视图控制器来显示它
  • 研究了重写某些方法,但我不确定如何实现这一点
解决这个问题的想法是要么让重叠视图忽略它们的触摸事件,但稍后让它们委派,要么以某种方式将触摸事件发送到视图层次结构的更后面


尽管如此,我还是想不通,希望你们能帮我解决这个问题。非常感谢

当你说“互动”时,你的确切意思是什么?对于它的视图根据来自分页控制器的事件(触摸或其他)进行反应/更改???@BonanzaDriver整个设置的思想与完全“正常”的分页视图控制器设置非常相似,但其效果使其看起来中心VC位置是固定的,而侧面VC则是滑动的。当pageVC显示中心(清除VC)时,您可以通过它看到固定VC-其中包含我想要与之交互的
UITableView
,例如滚动、选择等基于描述有几种处理方法;乍一看,我建议在寻呼控制器上设置手势识别器,并将收到的事件/自定义消息传递给您的家长。父对象可以充当分页的委托,也可以设置一些自定义闭包。无论如何,这都是关于将分页接收到的信息传递给父级的。@BonanzaDriver我明白了。当我有东西要展示或询问时,我会试一试并报告。您需要将接收触摸事件的视图的坐标空间转换为要“模拟”事件的对象(您的父对象)的坐标空间。UIView.convert()API将很好地完成这项工作。