私がこれまでに理解していることから、UIView はいつdrawRect呼び出されますか? CALayer がorをdisplay呼び出し、次に を呼び出すことによって呼び出されます。drawInContextdrawLayer:InContextUIViewdrawRect
しかし同時に、たとえば、アプリの起動時drawRectよりも頻繁に呼び出されることを理解していますが、呼び出されていないため、描画するにはレイヤーを呼び出す必要があります。displaydrawRectdisplaysetNeedsDisplay
しかし、これら 2 つの考え方は互いに矛盾しています。 が間接的に (またはを介して) 呼び出さdrawRectれた場合、 が呼び出されるたびに、も既に呼び出されている必要があります。したがって、このロジックに従って、は少なくとも と同じくらい頻繁に呼び出されますが、この図の何が問題なのですか?displaydrawInContextdrawLayer:InContextdrawRectdisplaydisplaydrawRect