代码如下,在OC中使用[touch.view类]获取对象类型,在Swift 3中如何获取它。
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {
if ([NSStringFromClass([touch.view class]) isEqualToString:@"UITableViewCellContentView"]) {
return NO;
} else {
return YES;
}
}
答案 0 :(得分:5)
扩展@ jglasse的答案,您可以使用
获取对象的类型let theType = type(of: someObject)
然后你可以通过
获取一个字符串let typeString = String(describing: type)
或者在一行中:
let typeString = String(describing: type(of: someObject))
答案 1 :(得分:1)
在Swift 3中,要确定对象的类型,可以使用:
type(of: yourObject)
示例:
let myString = "I'm a String!"
let myType = type(of: myString)
print(myType) // prints "String\n"