<分区>
目前,我正在尝试弄清楚如何为自定义按钮设置动画,我有一个图像和一个坐标,但我发现您可以使用 CGPath 类创建一个按钮/对象或 UIBezierPath 类。有人可以告诉我两者之间有什么区别吗?
<分区>
目前,我正在尝试弄清楚如何为自定义按钮设置动画,我有一个图像和一个坐标,但我发现您可以使用 CGPath 类创建一个按钮/对象或 UIBezierPath 类。有人可以告诉我两者之间有什么区别吗?
最佳答案
CGPath是来自 CoreGraphics 库的不透明类型,而 UIBezierPath是 UIKit 中的一个 Obj-C 类。 UIBezierPath 是 CGPath 的包装器(您可以轻松地在它们之间进行转换),具有更面向对象的接口(interface)和一些方便的方法。使用 CGPath 可能稍微快一些,因为它不必通过 Obj-C(尽管谁知道它如何与 Swift 一起工作)并且它具有更高级的功能,如 CGPathApply .重要的是,UIBezierPath 符合 NSCoding,这意味着您可以免费进行序列化/反序列化。
tl;dr:使用 UIBezierPath 除非你有一些理由不这样做。
关于ios - CGPath 和 UIBezierPath() 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25457597/