9.7 · Frame budgets, ProMotion, hitches and hangs
Smooth is a number: frames delivered on time. Hitches and hangs are different problems with different tools, and ProMotion halves the time you have.
Mental model. Every frame has a deadline. Missing one is a hitch; missing many in a row, or blocking the main thread for a long time, is a hang.
Frame time
The budget, ProMotion and how to measure.
- What is a hitch versus a hang, how does ProMotion change the budget, and how do you measure and fix them?
The display refreshes at a fixed rate and the system needs the next frame ready before each refresh. The budget is 1000 ms ÷ refresh rate: 16.7 ms at 60 Hz and…
More in Layout, rendering & animation
- 9.1 · Auto Layout, intrinsic size, and when layoutSubviews and draw run
- 9.2 · From layout to the GPU, and the two layer trees
- 9.3 · Offscreen passes, rasterization, blending, shadows and masks
- 9.4 · Implicit and explicit animation, UIView animation, and animators
- 9.5 · Core Graphics, UIBezierPath and draw(_:)
- 9.6 · TextKit 1 and 2, and Text in SwiftUI
- 9.8 · Margins, stack views, guides, constraint ownership, the layout cycle and measuring
- 9.9 · Coordinate conversion, 3D transforms and layer contents
- 9.10 · How UIView animation really works, springs, timing and display links
- 9.11 · Transform order, fill rules, text measurement, text containers and bitmaps
- 9.12 · Rectangle containment and moving a point between coordinate spaces