错误从2.3迅速迁移到SWIFT 3

问题描述:

时,我只是想尝试雨燕3.0在我的项目之一,它在斯威夫特2.Xcode版做工精细8.3.1错误从2.3迅速迁移到SWIFT 3

一切我固定的,但在FXForm得到错误library.Below是我在项目编译时收到错误:

"_OBJC_CLASS_$__TtCC13Test11AppDelegate15FXFormVariables", referenced from: 
     objc-class-ref in FXForms.o 
error: linker command failed with exit code 1 (use -v to see invocation) 

我公司已通过在用户验证登录,从应用程序的委托象下面这样:

//objective C class 
@objc class loggedinUser : NSObject { 
    class func isUserLoggedIn() -> Bool { return userLoggedin! } 
} 

,并用它在Objective-C类FXForm的象下面这样:

if([loggedinUser isUserLoggedIn] == true){ 
// default to bottom 
return CGPointMake(self.bounds.size.width/2, (self.bounds.size.height - (toast.frame.size.height/2)) - style.verticalPadding - 120); 
} 

在事先固定的上述错误和感谢请帮忙。

+0

错误是否说“未定义的架构符号”?或者''_OBJC_CLASS _ $ __ TtCC13Test11AppDelegate15FXFormVariables''行上面的错误行是什么? –

+0

你好@MichaelDautermann。架构i386未定义的符号:这是错误行。我想在多个设备上运行项目,并且在更改设备时此错误会改变。请帮忙。 – Akash

这不是Swift 2到Swift 3的重构问题。

这是一个问题,您需要确保FXForms .m文件正在您的项目中编译。你的项目中是否包含.h & .m文件?

转到Xcode窗口的文件检查器(左边的文件列表),单击FXForms.m文件并确保选中“Target Membership”,如在此截图的右边红色圆圈中: Make sure target membership is checked

+0

你好迈克尔。它已被检查。 – Akash

+0

哪个文件包含'FXFormVariables'?它看起来像是从FXForms.o中丢失的,所以如果你能找到定义'FXFormVariables'的文件,确保它的目标成员资格被检查为ON。 –

+0

编译时得到的错误:架构i386的未定义符号。 – Akash