在我的Swift应用程序中,我需要从Objective-C中访问一个名为weibo()
的类方法,如下所示
@interface Weibo : NSObject
+ (Weibo*)weibo;
@end
我已经配置了桥接头并尝试了以下语句
let w = Weibo.weibo() as Weibo
它不起作用。
更新:
我已经 fork the repo并修复了以下问题。
let w = Weibo.getWeibo() as Weibo // the method has been changed.
之所以不能使用它,是因为Swift将
+ (Weibo*)weibo;
视为一种便捷的构造方法。尽管大小写不同,但由于weibo
与类名Weibo
相同。我需要将名称更改为getWeibo
才能解决此问题以支持Swift。感谢您为这个答案做的每一个人。特别感谢@Anil和@David
jack
最佳答案
+ (Weibo*)weibo;
是类Weibo
的类方法。您可以像这样快速访问
let w:Weibo = Weibo.weibo()
但是当我尝试(
'weibo' is unavailable: use object construction 'Weibo()'
)时可能由于方法名和类名相同而给我错误。当我更改方法名称错误时let w:Weibo = Weibo.getWeibo() // works: method name changed
关于ios - 如何从Swift语言访问Objective-C类方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24367390/