我正在编写一个在String对象上使用bridgeToObjectiveC()的应用程序。自Beta 5以来,这已不再可用。
我试图这样做:
self.myList.filter{($0 as MyClass).name.bridgeToObjectiveC().localizedCaseInsensitiveContainsString(searchText)}
这给了我错误:
'String' does not have a member named 'bridgeToObjectiveC'
Beta 5中的等效代码是什么?
答案 0 :(得分:16)
使用as
转换为NSString
以获得相同的效果:
("string" as NSString).localizedCaseInsensitiveCompare("other string")
或者像这样选择链接:
("string" as NSString?)?.localizedCaseInsensitiveCompare("other string")
答案 1 :(得分:3)
尝试
_bridgeToObjectiveC()
而不是
bridgeToObjectiveC()
如下:
self.myList.filter{($0 as MyClass).name._bridgeToObjectiveC().localizedCaseInsensitiveContainsString(searchText)}