2014-06-08 44 views
4

我期待使用Objective-C库saxy解析一些XML为对象,但该方法的签名是:如何将Swift类传递给需要类的Objective-C方法?

+ (id)rootXPath:(NSString *)xpath toMany:(Class)toType nsURI:(NSString *)nsURI; 

我无法工作了我怎么会通过Class对象类型因为Swift似乎没有以这种方式与类一起工作。作为一种解决方法,我可能会在Objective-C中将领域模型+包装器做成一个封装器,但是很高兴知道是否有方法在纯Swift中执行它。

我试过以下,但我得到一个EXC_BAD_INSTRUCTION:

OXmlElementMapper.rootXPath("/route", toMany: Route.self, nsURI: "") 

,这产生一个语法错误:

OXmlElementMapper.rootXPath("/route", toMany: Route.Type, nsURI: "") 
+0

做你解决你从斯威夫特传递给类目标C API的问题?我面临同样的问题,我尝试传递MyClass.self。但这似乎并没有奏效。我正在使用Xcode 7 Beta 6. – DShah

+0

@dshah,不怕。我很长一段时间没做得很快。 –

回答

4

MyClass.self引用类的正确方法,但也许你在课堂上缺少@objc

docs regarding interop

+0

你说的没错 - 传球不是问题。看起来这种方法出现了一个糟糕的表演。感谢您指出正确的方向! –

相关问题