Swift 反射机制,命名空间

Posted xiao孛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Swift 反射机制,命名空间相关的知识,希望对你有一定的参考价值。

     1、 知道 Swift 中有命名空间
        - 在同一命名空间下,全局共享!
        - 第三方框架使用 Swift 如果直接拖拽到项目中,从属同一个命名空间,很有可能冲突!
        - 以后尽量使用 cocoapod
     2、 重点是要知道 Swift 中 NSClassFromString(发射机制)的写法
        - 发射最重要的目的是解耦
        - 提示:第一印象会发现一个简单的功能,写的很复杂。但是封装的好,弹性很大!

 

在程序中,当需要使用String来获取类名时,就需要命名空间

let clsName = Bundle.main.infoDictionary?["CFBundleName"] as? String ?? "" + "." + "ViewController"
let cls = NSClassFromString(clsName) as? UIViewController.Type

这样才能获取正确的ViewController

以上是关于Swift 反射机制,命名空间的主要内容,如果未能解决你的问题,请参考以下文章

Swift 命名空间形式扩展的实现

C#反射机制详解

(转)C#反射机制详解

反射机制

反射机制入门

反射机制入门