AutoLayout 生命周期的一些疑问
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 25/100
- Issue 类型
- 文档
- 描述清晰度
- 需要澄清
- 活跃度
- 停滞
- 技术栈
- objective-c
调研方向
未指定文件或测试。首先定位涵盖 setNeedsUpdateConstraints、updateConstraints 和 layoutSubviews 的文档或示例,然后核实其中对遍历顺序的说明。完成的标准是添加清晰的说明,解释为什么约束更新会从子视图向父视图进行。
由索引模型根据 Issue 内容生成。
描述
在 Objccn 中,这样描述:
第一步:更新约束,可以被认为是一个“计量传递 (measurement pass)”。这是自下而上(从子视图到父视图)发生的,它为布局准备好必要的信息,而这些布局将在实际设置视图的 frame 时被传递过去并被使用。你可以通过调用 setNeedsUpdateConstraints 来触发这个操作,同时,你对约束条件系统做出的任何改变都将自动触发这个方法。无论如何,通知自动布局关于自定义视图中任何可能影响布局的改变是非常有用的。谈到自定义视图,你可以在这个阶段重写 updateConstraints 来为你的视图增加需要的本地约束。
请问这个怎么理解,为什么更新约束是从子视图到父视图?
第二步中的 layoutSubviews 从父视图到子视图,我能理解,因为子视图需要父视图确定后,来决定自己的布局。
非常感谢,这个问题困扰比较久了
- 主要语言
- Objective-C
- 星标
- 62
- 派生
- 12
- PR 合并指标
- 30 天内没有已合并 PR
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
ming1016/ShowAutoLayout 的其他 Issue
-
有问题未关闭
难度 5/5 一周以上 新手友好度 10/100
ming1016/ShowAutoLayout#1 · 2 条评论 ·
查看 ming1016/ShowAutoLayout 的全部 Issue
相似的 Issue
-
Needs: Author Feedback Needs: Repro
难度 2/5 1-3 小时 新手友好度 76/100
react/react-native#58952 · 1 条评论 ·
维护者通常 1 天内回复
-
难度 1/5 1 小时以内 新手友好度 83/100
SwiftOldDriver/iOS-Weekly#5454 ·
-
SwiftPM: GoogleAPIClientForRESTCore fails to link when GTMSessionFetcherCore is built as its own framework可能已有人在做 @ylorn 于 1 天前认领。 未关闭
难度 1/5 1 小时以内 新手友好度 88/100
google/google-api-objectivec-client-for-rest#745 · 6 条评论 ·
-
难度 2/5 1-3 小时 新手友好度 85/100
objective-see/LuLu#930 ·
-
难度 1/5 1 小时以内 新手友好度 82/100
Ericsson/codechecker#5129 ·
维护者通常 1 天内回复