Objective c 在Swift项目中导入代理几何套件(AGK)

Objective c 在Swift项目中导入代理几何套件(AGK),objective-c,swift,Objective C,Swift,我正在尝试导入代理几何套件,它是用Objective-C编写到Swift项目中的 我首先将所有源文件复制到我的项目中,然后创建一个桥接头文件,在其中导入我刚才添加的所有头文件,如下所示 我的问题是,尽管所有导入的类和结构现在都可以在我的项目中使用,但像AGKQuad这样的联合却不可用 我是否做错了什么,或者工会在Swift中不可用,如果是这样,我如何才能最好地绕过这个问题?非常感谢 让·克里斯托夫 编辑:我还是一个在IOS上开发的新手,但是我不能只制作一个Objective-C类,我可以从我的S

我正在尝试导入代理几何套件,它是用Objective-C编写到Swift项目中的

我首先将所有源文件复制到我的项目中,然后创建一个桥接头文件,在其中导入我刚才添加的所有头文件,如下所示

我的问题是,尽管所有导入的类和结构现在都可以在我的项目中使用,但像AGKQuad这样的联合却不可用

我是否做错了什么,或者工会在Swift中不可用,如果是这样,我如何才能最好地绕过这个问题?非常感谢

让·克里斯托夫

编辑:我还是一个在IOS上开发的新手,但是我不能只制作一个Objective-C类,我可以从我的Swift项目中调用它来完成这项工作,并将我想要的结果发送给我吗?我试着这么做,但不幸的是,它并没有给我预期的结果,尽管我可能还没有完全理解代理几何套件是如何工作的。该方法是从github上的自述文件中获得的

@implementation DoTheJob

- (UIImageView*)DoDaJob:(UIImage*)image {

    UIImageView *view = [[UIImageView alloc] initWithImage:image];
    [view.layer ensureAnchorPointIsSetToZero]; // set the anchor point to [0, 0] (this method keeps the same position)

    AGKQuad quad = view.layer.quadrilateral;
    quad.br.x += 600; // shift bottom right x-value with 20 pixels
    quad.br.y += 500; // shift bottom right y-value with 50 pixels

    view.layer.quadrilateral = quad; // the quad is converted to CATransform3D and applied
    printf("DoingDaJob");
    return view;
}

@end
这在原则上是否可行?

C显然还不支持工会


我在编辑的问题中发布的代码运行良好,尽管它可能不是最佳解决方案,但我只是误解了该库的工作原理。

比较起来,似乎不支持C联合。我想知道它是否同时得到支持,或者是否存在可行的解决方案。在结束这个问题之前,我会再等一会儿,希望有人能帮助我。谢谢目前有一个与此相关的拉取请求。我今天正在研究这个问题。像这样的问题最好在github的问题页面上提出,请参阅swift branch