这是我的代码。
let myDeepLinkAction: UAAction = UAAction(block: {(args:UAActionArguments, handler:UAActionCompletionHandler) -> Void in
handler(UAActionResult.empty())
}, acceptingArguments: {(arguments: UAActionArguments) in
if arguments.situation == UASituation.backgroundPush {
return true
}
return ((arguments.value! as AnyObject).isKind(of: NSString) || (arguments.value! as AnyObject).isKind(of: URL))
})
快速版本转换2.2到3.0之后会出现类型错误,请尽可能为我提供解决方案。
答案 0 :(得分:1)
我找到了解决方案,简单
let myDeepLinkAction: UAAction = UAAction(block: {(args:UAActionArguments, handler:UAActionCompletionHandler) -> Void in
handler(UAActionResult.empty())
}, acceptingArguments: {(arguments: UAActionArguments) in
if arguments.situation == UASituation.backgroundPush {
return true
}
return (arguments.value! is NSString || arguments.value! is URL)
})
return(arguments.value!是NSString || arguments.value!是URL)
答案 1 :(得分:0)
使用classForKeyedArchiver属性
例如:如果您想知道视图控制器是否属于某个类,请使用以下代码段
if sampleController.isKind( of : listOfFlowersViewController.classForKeyedArchiver()!)
{
//your success code here
}
答案 2 :(得分:0)
当我在xcode 8中更新为swift 3时,我遇到了这个问题
for view in subViews {
if ((view as AnyObject).isKind(of : UIScrollView))
{
scrollView = view as? UIScrollView
}
显示错误“无法调用非功能类型的值”((AnyClass) - > Bool)!“ 然后我添加了这个“classForKeyedArchiver()” 用于子视图{
中的视图 if ((view as AnyObject).isKind(of :
UIScrollView().classForKeyedArchiver!))
{
scrollView = view as? UIScrollView
}
非常感谢,这对我有用。