Как получить тип объекта в Swift?
Я не могу найти функцию или метод, которые возвращают тип объекта в Swift.
Как получить тип или класс объекта в Swift?
Я пробовал использовать классы Obj-C, которые, очевидно, не работали.
В python у вас есть такие вещи, как type
или isinstance
В Javascript у вас есть constructor
Ответы
Ответ 1
Если вам просто нужно проверить тип объекта, вы можете использовать оператор проверки типа is
, как в:
if myObject is UIView {
// do something
}
Если вы хотите попытаться вызвать метод на объекте, но вы не уверены в этом классе, опустите объект в нужный вам тип, например:
if let myView = myObject as? UIView {
myView.layer.backgroundColor = myColor
}
Ответ 2
Вы ищете dynamicType
?
someInstance.dynamicType.printClassName()