在Swift中,如何检查对象(AnyObject)是否为String?

shi*_*him 10 string swift

尝试使用:

obj.isKindOfClass(String)
Run Code Online (Sandbox Code Playgroud)

但它说类型'字符串'不符合协议'AnyObject'

那你怎么知道一个对象是不是一个字符串呢?

这个问题的上下文是UIActivity方法,prepareWithActivityItems,我需要在其中保存活动项,但如果有多个活动项,你怎么知道哪个是哪个?

sco*_*phc 21

校验:

obj is String // true or false
Run Code Online (Sandbox Code Playgroud)

兑换:

obj as? String // nil if failed to convert
Run Code Online (Sandbox Code Playgroud)

可选绑定:

if let str = obj as? String {
    // success
} else {
    // fail
}
Run Code Online (Sandbox Code Playgroud)