Swift:如何将AnyObject.Type作为参数?

时间:2019-04-10 09:12:58

标签: swift swift5

下面是一个代码:

<style>
.button {
  background-color: #FFFFFF;
  color: black;
}
</style>

我想将此代码提取为函数

  filebeat.inputs:
- type: log
  enabled: true
  paths:
 - C:\ELK-Logger\filebeat-6.6.1-windows-x86_64\LowError.txt
 - C:\inetpub\logs\LogFiles\*\*
 - C:\Hosting\stagingb2c\PaymentGatewayLogs\*\*
 - C:\Hosting\stagingb2c\ErrorLogs\*
  recursive_glob: enabled 

,但是它不起作用。怎么办?

2 个答案:

答案 0 :(得分:0)

尝试一下:

func getClassFromString<T>(_ cName: String, cType: T) -> T.Type {
    return NSClassFromString(cName) as? T.self
}

答案 1 :(得分:0)

您可以创建这样的通用函数

func classFromString<T>(_ className: String, _ classType: T) -> T? {
    return NSClassFromString(className) as? T
}

并按如下所述使用它

if let cls = classFromString("UIView", UIView.self) {
   let view = cls.init()
}