Ios 什么&x2019;创建覆盖视图的好方法是什么?

Ios 什么&x2019;创建覆盖视图的好方法是什么?,ios,cocoa-touch,uiviewcontroller,Ios,Cocoa Touch,Uiviewcontroller,我想创建一个小的覆盖视图,它将漂浮在所有其他视图之上。我需要视图接受触摸,并且即使在基础视图之间的转换过程中,也需要视图保持在原位。到目前为止,我所尝试的: 插入键ui窗口的独立视图。明显的缺点是视图未连接到任何视图控制器,这意味着手动处理(至少?)旋转事件 UIViewControllercontainment,拥有一个“根”视图控制器,该控制器将包含浮动视图,所有导航都将在其下方完成。这在很大程度上是一个“第一类公民”解决方案,但呈现模式视图控制器与浮动视图重叠 第二个ui窗口,具有包含浮动

我想创建一个小的覆盖视图,它将漂浮在所有其他视图之上。我需要视图接受触摸,并且即使在基础视图之间的转换过程中,也需要视图保持在原位。到目前为止,我所尝试的:

  • 插入键
    ui窗口的独立视图
    。明显的缺点是视图未连接到任何视图控制器,这意味着手动处理(至少?)旋转事件

  • UIViewController
    containment,拥有一个“根”视图控制器,该控制器将包含浮动视图,所有导航都将在其下方完成。这在很大程度上是一个“第一类公民”解决方案,但呈现模式视图控制器与浮动视图重叠

  • 第二个
    ui窗口
    ,具有包含浮动视图的根视图控制器。这与苹果的建议背道而驰,我在过滤哪些事件应该转到哪个窗口时遇到了一些问题


  • 有没有人有一个不需要太多脆弱的黑客攻击的工作解决方案?

    最后,我按照Jonathan的建议,将覆盖层作为一个单独的视图插入到关键窗口中。视图有一个关联的控制器对象(一个
    NSObject
    的子类,而不是
    UIViewController
    ),该控制器负责旋转逻辑。这样,实现实际覆盖对象的视图根本不需要关心旋转事件。

    我实现了您的第一种方法,效果很好。处理旋转并不是那么难。