在界面构建器中使用导航栏创建UIView时,顶部栏占用一些空间,但视图仍具有相同的大小。这意味着视图的底部不可见。
有没有办法获得UIView的“可见尺寸”?我想在屏幕底部显示一个子视图,但子视图的一部分是隐藏的,因为父视图位于屏幕“下方”。
答案 0 :(得分:4)
您应该使用IB中的“struts-and-springs”控件将基本视图设置为完全对齐。然后它会自动调整大小。完成此操作后,您只需使用view.bounds属性即可访问其可见区域。
答案 1 :(得分:2)
您应该使用Ben Gottlieb的解决方案,但在计算名为“view
”的视图的可见区域方面,您可以使用:
CGRect viewBoundsInWindow =
[[[UIApplication sharedApplication] keyWindow] convertRect:view.layer.visibleRect fromView:view];