桥接头方法参数问题

Bridging Header Method Parameter Issue

我正在尝试学习如何在此测试项目中使用桥接头。对于这部分,我想要一个方法,它接受 returns 一个 CGPoint 数组。

    #import <Foundation/Foundation.h>
    #import <UIKit/UIKit.h>
    #import <CoreGraphics/CoreGraphics.h>

    @interface OpenCVWrapper : NSObject

    + (UIImage *)grayscaleImage:(UIImage *)image;
    + (UIImage *)gaussianBlurImage:(UIImage *)image;
    + (UIImage *)cannyEdgeImage:(UIImage *)image;

    //Error says Expected a type
    + ([CGPoint *])lineEdges:([CGPoint *])points;

    @end

因为我是新手,所以我什至不知道从哪里开始寻找问题。

因为你需要return一个CGPoint数组,你的数组应该包含一个NSValue类型,因为数组不能包含struct类型

+ (NSArray<NSValue *> *)lineEdges:(NSArray<NSValue *> *)points;

并且您应该将您的方法称为

NSArray *lineEdges = [OpenCVWrapper lineEdges:@[[NSValue valueWithCGPoint:CGPointMake(3.3, 4.4)]]];

return 值也应该在 NSValue 中并提取

NSValue *val = [lineEdges objectAtIndex:0];
CGPoint p = [val CGPointValue];