CALayer -drawInContext和-renderInContext之间有什么区别?CALayer -drawInContext和-renderInContext之间有什么区别?
25
A
回答
25
当提供自定义石英绘制内容以在CALayer中显示时,您可以覆盖-drawInContext:
并在那里执行您的自定义绘图。这与UIView或NSView的-drawRect:
类似。或者,您可以将另一个课程设置为CALayer的代表并实施-drawLayer:inContext:
以向标准CALayer提供自定义内容。
您不会覆盖-renderInContext:
,而是可以在图层上调用此窗口以将其及其所有子图层渲染到特定的Core Graphics上下文中。请注意,这不会渲染某些类型的图层(如使用OpenGL内容的图层)。在渲染到PDF上下文时,它的行为也不像您期望的那样运行,其中图层将以位图矩形而不是纯矢量元素的形式出现。要解决此问题,您可能需要查看Core Plot framework's CPTLayer implementation,我们绕过了正常的渲染过程,以便保留从CALayer子类生成的PDF中的向量。
相关问题
- 1. dpm()和dsm()之间有什么区别?
- 2. @dynamic和@synthesize之间有什么区别?
- 3. vbNullString和“”之间有什么区别吗?
- 4. * zoom和zoom之间有什么区别?
- 5. String.Concat,string.format和+之间有什么区别?
- 6. StaticLayout和DynamicLayout之间有什么区别
- 7. WebServiceBinding.EmitConformanceClaims和WebServiceBinding.ConformanceClaims之间有什么区别?
- 8. :: after和after之间有什么区别?
- 9. %.02f和%.2f之间有什么区别?
- 10. {$ var}和$ var之间有什么区别?
- 11. ReleaseFloatArrayElements和DeleteLocalRef之间有什么区别
- 12. {0}和“”之间有什么区别?
- 13. getA()和this.getA()之间有什么区别?
- 14. @observable和@published之间有什么区别
- 15. $ {}和#{}之间有什么区别?
- 16. url.getFile()和getpath()之间有什么区别?
- 17. KVC和Properties之间有什么区别?
- 18. Lazy.Force()和Lazy.Value之间有什么区别
- 19. “层”和“层”之间有什么区别?
- 20. 1.1em和1.05em之间有什么区别?
- 21. proc和lambda之间有什么区别?
- 22. ViewFlipper和ViewSwitcher之间有什么区别
- 23. typedef和宏之间有什么区别?
- 24. “$^N”和“$ +”之间有什么区别?
- 25. NSInvocation和block之间有什么区别?
- 26. -existingObjectWithID:error:和-objectWithID之间有什么区别?
- 27. {0}和+之间有什么区别?
- 28. Locationmanager.locationListener和com.google.android.gms.location.LocationListener之间有什么区别?
- 29. $ .cache和$ .data之间有什么区别?
- 30. DateTime.UtcNow和DateTime.Now.ToUniversalTime()之间有什么区别
核心图转移到[github](https://github.com/core-plot) – lazi74 2015-03-17 09:19:32