当前位置:  开发笔记 > IOS > 正文

获取错误Receiver for class message是一个前向声明

如何解决《获取错误Receiverforclassmessage是一个前向声明》经验,为你挑选了1个好方法。

我正在创建自己的框架,我添加了客观的c文件和它的工作正常后,我需要添加一些swift文件后添加swift文件xcode不给我选择自动创建桥接然后我遵循混合和匹配的方法.我遵循了我理解的一切.

我想访问swift文件到Objective c但是我收到了前向声明的错误所以这里是我附加的示例代码,请指导我在哪里做错了.

TestObjectCFile.h

#import 
@class TestSwiftFile;
@interface TestObjCFile : NSObject


@end

TestObjectCFile.m

#import "TestObjCFile.h"
#import 
#import "TestFrameworkTry.h"


@implementation TestObjCFile

- (void)TestMethodForImportingSwiftFile
{

    TestSwiftFile * testSwiftFile = [[TestSwiftFile alloc] init];
//    TestSwiftFile * testSwiftFile = [self returnSwiftClassInstance];
    NSLog(@"%@",testSwiftFile);
}
@end

TestSwiftFile.swift

import Foundation

并且错误发生在TestObjectCFile.m后面的行上.

TestSwiftFile * testSwiftFile = [[TestSwiftFile alloc] init];

如附图所示. 在此输入图像描述



1> Aleem..:

最后我得到了解决方案 我做了以下更改.以下是您的框架中的待办事项列表.

Objective C类中的Swift类用法

在Swift中使用类名之前的Open Keyword

在打开Swift类的关键字之前使用@objc关键字

在Umbrella文件中导入目标c类的所有头文件YourProject.h那些正在使用Swift类.

#import 在目标c中使用

我遵循Apple Mix and Match方法.

推荐阅读
小妖694_807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有