【问题标题】:How do you retrieve the type of an object in Swift? [duplicate]如何在 Swift 中检索对象的类型? [复制]
【发布时间】:2014-07-25 19:33:12
【问题描述】:

我似乎在 Swift 中找不到返回对象类型的函数或方法。

如何在 Swift 中检索对象的类型或类?

我尝试使用明显不起作用的 Obj-C 类。

在 python 中,你有 typeisinstance 之类的东西

在Javascript中你有constructor

【问题讨论】:

    标签: swift


    【解决方案1】:

    如果只需要检查一个对象的类型,可以使用类型检查运算符is,如:

    if myObject is UIView {
        // do something
    }
    

    如果您想尝试调用对象的方法但不确定类,请将对象向下转换为您需要的类型,如下所示:

    if let myView = myObject as? UIView {
        myView.layer.backgroundColor = myColor
    }
    

    【讨论】:

      【解决方案2】:

      你在找dynamicType吗?

      someInstance.dynamicType.printClassName()
      

      【讨论】:

      • printClassName() 不是 Swift 的一部分。它来自 Swift 文档示例代码。
      猜你喜欢
      • 2016-05-31
      • 2012-01-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多