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