Dokümanlardan, containsString()bir String'i çağırmanın çalışması gerektiği anlaşılıyor :
Swift'in String tipi, Foundation'ın NSString sınıfına sorunsuz bir şekilde köprülenir. Kakao veya Kakao Dokunuşundaki Temel çerçevesiyle çalışıyorsanız, bu bölümde açıklanan Dize özelliklerine ek olarak, oluşturduğunuz herhangi bir Dize değerini çağırmak için tüm NSString API'sini kullanabilirsiniz. Dize değerini, NSString örneği gerektiren herhangi bir API ile de kullanabilirsiniz.
Ancak, bu şekilde çalışmıyor gibi görünüyor.
Kullanmaya çalışırsanız someString.containsString(anotherString), derleme zamanı hatası alırsınız 'String' does not contain a member named 'containsString'.
Yani, bir kaç seçeneğiniz kaldı, bunlardan biri açıkça açıkça StringObjective-C'ye köprülemek ve bridgeToObjectiveC()diğer ikisini kullanarak açıkça kullanmaktır NSStringve sonuncusu StringbirNSString
Köprü kurarak şunları elde edersiniz:
var string = "hello Swift"
if string.bridgeToObjectiveC().containsString("Swift") {
println("YES")
}
Dizeyi açıkça bir olarak yazarak NSStringşunları elde edersiniz:
var string: NSString = "hello Swift"
if string.containsString("Swift") {
println("YES")
}
Mevcut Stringbir hesabınız varsa, NSString (string :) kullanarak bir NSString başlatabilirsiniz:
var string = "hello Swift"
if NSString(string: string).containsString("Swift") {
println("YES")
}
Ve son olarak, varolan yayınlayabileceğim Stringbir etmek NSStringaşağıda
var string = "hello Swift"
if (string as NSString).containsString("Swift") {
println("YES")
}