CGGeometry扩展 - 覆盖CGRectMake

时间:2015-01-22 00:45:21

标签: swift core-graphics cgrect

我试图扩展CGGeometry类(或者它是一个结构体?)。我已尝试导入UIKitCoreGraphicsCoreGraphics.CGGeometry,甚至Foundation,但我一直在&#34;使用未声明类型的CGGeometry&#34;。< / p>

这是我的实际扩展程序,只是尝试覆盖CGRectMake()作为初学者。甚至可以覆盖CGGeometry吗?

extension CGGeometry {
    override func CGRectMake() {

    }
}

2 个答案:

答案 0 :(得分:0)

CGGeometry实际上既不是一个类也不是一个结构,该文件称为CGGeometry,其中定义了几何图元的defenition,因此你不能覆盖它。

答案 1 :(得分:0)

CGGeometry是一个C头,提供桥接到Swift的内联C函数。 Swift提供了一个新的CGRect()初始化程序,作为使用旧的内联C函数CGRectMake()的替代方法。考虑扩展CGRect并创建自己的初始化程序:

extension CGRect {

    init(centeredInRect: CGRect) {
        self = // logic here
    }
}