在窗口中获取子视图的框架不考虑导航栏

时间:2015-06-15 20:15:20

标签: ios uiview

我正在使用以下代码在窗口中获取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中,如果它可以帮助任何人

提前致谢

更新:测试后,框架被导航栏高度和状态栏高度

偏移

0 个答案:

没有答案