Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

AutoLayout 生命周期的一些疑问

Aperta
#2 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
25/100
Tipo di issue
Documentazione
Chiarezza
Da chiarire
Stato di attività
Ferma
Stack tecnologico
objective-c
Ambito
documentation

Direzione di ricerca

Non è indicato alcun file o test. Inizia individuando la documentazione o gli esempi che trattano setNeedsUpdateConstraints, updateConstraints e layoutSubviews, quindi verifica la spiegazione del loro ordine di attraversamento. Il lavoro è completato quando viene aggiunta una spiegazione chiara che chiarisce perché gli aggiornamenti dei constraint procedono dalle viste figlie alle viste padre.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

在 Objccn 中,这样描述:
第一步:更新约束,可以被认为是一个“计量传递 (measurement pass)”。这是自下而上(从子视图到父视图)发生的,它为布局准备好必要的信息,而这些布局将在实际设置视图的 frame 时被传递过去并被使用。你可以通过调用 setNeedsUpdateConstraints 来触发这个操作,同时,你对约束条件系统做出的任何改变都将自动触发这个方法。无论如何,通知自动布局关于自定义视图中任何可能影响布局的改变是非常有用的。谈到自定义视图,你可以在这个阶段重写 updateConstraints 来为你的视图增加需要的本地约束。

请问这个怎么理解,为什么更新约束是从子视图到父视图?

第二步中的 layoutSubviews 从父视图到子视图,我能理解,因为子视图需要父视图确定后,来决定自己的布局。

非常感谢,这个问题困扰比较久了

Lingua principale
Objective-C
Stelle
62
Fork
12
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di ming1016/ShowAutoLayout

Tutte le issue di ming1016/ShowAutoLayout

Issue simili

Altre issue su Objective-C

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.