我正在使用以下代码在窗口中获取UIView子视图的框架:
viewToTapOutsideOf.superview!.convertRect(viewToTapOutsideOf.frame, toView: UIApplication.sharedApplication().keyWindow!.rootViewController!.view)
但是,当我通过在视图控制器的视图中添加子视图来测试它时:
let testView = UIView(frame: rectToTapOutsideOf)
testView.backgroundColor = UIColor.redColor().colorWithAlphaComponent(0.5)
view.addSubview(testView)
添加了子视图,其中导航栏的高度添加到框架的y上。
起初我认为它可能与布局指南有关,但打印它的长度等于零:
print("\(topLayoutGuide.length)”)
视图控制器包含在UINavigationController中,如果它可以帮助任何人
提前致谢
更新:测试后,框架被导航栏高度和状态栏高度
偏移