swift无法使用String调用isKindOfClass

时间:2015-08-26 06:59:34

标签: ios string swift

我有

let fieldValue: AnyObject?

如果我想检查它是否是NSString,那就没问题了:

fieldValue!.isKindOfClass(NSString)

但是当我尝试检查它是否是字符串时,它会给出错误:

fieldValue!.isKindOfClass(String)
Cannot call value of non-function type '((AnyClass) -> Bool)!'

3 个答案:

答案 0 :(得分:8)

isKindOfClass()仅适用于NSObject的子类。

您可以使用fieldValue is String

if fieldValue is String {
  // do something with string
}

答案 1 :(得分:5)

使用'是'

if fieldValue is String {
//
}

答案 2 :(得分:-3)

您可以通过执行以下操作来检查它是否为字符串:

var uiasd = [AnyObject]()

uiasd = ["asd", "asdf"]

if uiasd[0] .respondsToSelector("stringByAppendingFormat:") {
    println("this is a string")
}

现在你已经编辑过你的问题了:

var uiasd: AnyObject? 

uiasd = "asdf"

if uiasd! .respondsToSelector("stringByAppendingFormat:") {
    println("asdfasdfkjgkhkjhkjhkjhkj")
}