首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >_UILayoutGuide是什么?

_UILayoutGuide是什么?
EN

Stack Overflow用户
提问于 2013-10-23 08:46:20
回答 3查看 5.4K关注 0票数 13

我需要了解_UILayoutGuide,比如它是什么,它做什么,以及为什么它在UIView的层次结构中呈现为几乎总是带有frame = (0,0,0,0)subview

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-10-23 08:56:10

UILayoutGuide通常指的是-topLayoutGuide和-bottomLayoutGuide,它们并不是真正的约束,但它们是视图元素,符合一种称为UILayoutSupport的协议。

您可以找到更多关于协议这里的信息。这个值通常是0,但是当你问他们的大小时,你应该注意很多。

票数 6
EN

Stack Overflow用户

发布于 2013-10-23 08:59:18

这是一个私有的Apple,当启用自动布局时,它用于topLayoutGuidebottomLayoutGuide。如果您的导航栏是不透明的,这些“视图”之一将在0,0。如果您的导航条是半透明的,相同的view通常在0,64的纵向(状态栏20 in +导航条44 in )。有一个类似的底部工具栏,如果你有一个。

这样做的原因是,您可以定义布局约束,这些约束与UIView对象一起工作。

需要注意的一点是,如果您有一些在子视图上工作的逻辑,请注意不要将它们包括在计算中。您可以通过测试来忽略这些:

[subview conformsToProtocol:@protocol(UILayoutSupport)]

在iOS 9中,有一个新的私有类_UILayoutSpacer,它不是UIView的后代,但可以用来设置约束。该系统似乎是以双模式工作的,从xibs和故事板加载的控制器仍然使用_UILayoutGuide,而在代码中创建的控制器是使用_UILayoutSpacer设置的。

票数 21
EN

Stack Overflow用户

发布于 2015-11-06 15:50:04

UILayoutGuides

UILayoutGuides表示布局引擎中的矩形。它们不会出现在视图层次结构中,但可以用作NSLayoutConstraint中的项。

iOS 9

在iOS 9中,苹果提供了一种新的改进的控制负空间的方法,称为UILayoutGuide。布局指南(即布局指南)是布局中的一个空矩形,可以根据该矩形应用约束来定义它与其他UILayoutGuides UIViews.或的关系

UILayoutGuides没有层次结构,它们也不是视图层次结构的一部分。它们属于UIView,但不能拥有UIView或其他UILayoutGuide。UILayoutGuides不包含CALayer,也不包含UIResponder。这意味着不存在通过添加UILayoutGuide而添加到呈现阶段的绘图开销,也没有通过拥有UILayoutGuide而对UIEvent处理过程产生影响。

来源:

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19536992

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档