我目前正在网上学习几个Swift课程来计算这个新语法,但我觉得我遇到了一个我无法弄清楚的墙。
我的问题是:在Swift中调用自定义Objective-C方法需要做什么?为什么Swift不能识别代码的来源?为什么我会收到类似“UIViewController没有名为'customMethod'的成员”的错误?这是一个进口问题吗?
既然你知道我的问题,这就是我要问的原因和背景
我有一个调用此方法的objective-c .m文件:
- (void)configureMyApp
{
// overridden by subclasses
}
然后这个:
- (void)addAppElement:(MyAppElement *)element
{
[self addAppElement atIndex:[self.elements count]];
}
在我的Swift应用程序中,我设置了桥接头并将.h文件导入到所述头文件中
我试图通过这个Swift函数调用configureMyApp
方法:
func configureMyApp()
{
self.addAppElement...
}
但它无法识别该函数来自我导入的objective-c文件,myswiftfile.swift也不识别addAppElement
我在obj-c中称之为的方式是:
- (void)configureMyApp
{
[super configureMyApp];
[self addAppElement:.....];
}
导入obj-c代码还需要做什么吗?我能错过什么?
答案 0 :(得分:1)
此错误:UIViewController does not have a member named 'customMethod'
表示您尝试在customMethod
键入的对象上调用UIViewController
,而不是UIViewController
的自定义子类。