ios - 返回的对象类型与函数体 swift objc 中的对象类型不同

标签 ios objective-c swift

我一直在日以继夜地寻找这个。我似乎是第一个遇到如此烦人的错误的人。我有一个快速的应用程序,并通过 cocoa pod 导入了一个 Objective-C 框架(XlsxReaderWriter)。一切正常,除了没有返回 Objective-C 框架中函数中指定的类型。一切都以 Any 形式返回。

例如;

inputFile: BRAWorksheet = file.workbook.worksheets![0] //this gives me a compile error saying "Can not assign value of type Any to BRAWorksheet"

这是 objective-c 中的属性声明

- (NSArray *)worksheets {
    NSMutableArray *worksheets = @[].mutableCopy;

    for (BRASheet *sheet in _sheets) {
        BRAWorksheet *worksheet = [self.relationships relationshipWithId:sheet.identifier];
        worksheet.styles = _styles;
        worksheet.sharedStrings = _sharedStrings;
        worksheet.calcChain = _calcChain;
        [worksheets addObject:worksheet];
    }

    return worksheets.count ? worksheets : nil;
}

即使在图书馆的文档中,他们也是这样做的;

var firstWorksheet: BRAWorksheet = spreadsheet.workbook.worksheets[0]

所以谁能告诉我这个奇怪的错误是什么??我越来越绝望了。

PS:由于某些原因我不想投

最佳答案

而不是 NSArray * , 将方法的返回类型设置为 NSArray<BRAWorksheet *> * .

关于ios - 返回的对象类型与函数体 swift objc 中的对象类型不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45494980/

相关文章:

ios - 添加图像时应为 ',' 分隔符

ios - 自动布局在 iPhone 6s Plus 中无法按预期工作

ios - 在 Swift 中获取复杂嵌套字典/数组组合的键值

iphone - 检查文件是否更新

ios - NSArray索引超出范围错误

swift - 我可以在 launchImage 消失后淡出它吗?

ios - 在 Uitextfield 上使用 UiSearchBar 有任何真正的理由吗?

ios - 如何实现 iOS 后台获取?

swift - 生成 UIViewController 的函数

ios objective c todo 应用程序