文档章节

Swift字符串转换成类

宁音雨雾
 宁音雨雾
发布于 2016/05/20 15:06
字数 283
阅读 272
收藏 0

 


字符串转换成对类:

// MARK:
    // MARK: 字符串转换成类名
    /// 字符串转换成类
    class func stringClassFromString(className: String) -> AnyClass! {
        
        /// 获取命名空间
        let namespace = NSBundle.mainBundle().infoDictionary!["CFBundleExecutable"] as! String;
        
        /// 根据命名空间传来的字符串先转换成anyClass
        let cls: AnyClass = NSClassFromString(namespace + "." + className)!;
        
        // 在这里已经可以return了   返回类型:AnyClass!
        return cls;
    }

使用:

            /**
             
             这里包含二步
             1.获取类名 
             2.明确类的类型
             如果不综合成一行代码会有警告,我不喜欢警告
             
             */
            
            let vcClass = XNTool.stringClassFromString(controllerName) as! UIViewController.Type;

为了方便可以这样


字符串转换成对象:

    // MARK:
    // MARK: 字符串转换成类,返回其对象
    /// 字符串转换成类,返回其对象
    class func stringClassObjectFromString(className: String) -> UIViewController! {

        /// 获取命名空间
        let namespace = NSBundle.mainBundle().infoDictionary!["CFBundleExecutable"] as! String;
        
        /// 根据命名空间传来的字符串先转换成anyClass
        let cls: AnyClass = NSClassFromString(namespace + "." + className)!;
        
        // 在这里已经可以return了   返回类型:AnyClass!
        //return cls;
        
        /// 转换成 明确的类
        let vcClass = cls as! UIViewController.Type;

        /// 返回这个类的对象
        return vcClass.init();
    }

学自:小行为(简书作者 )

© 著作权归作者所有

上一篇: 一些美剧
下一篇: 获取iPhone型号
宁音雨雾
粉丝 55
博文 312
码字总数 48631
作品 0
东城
程序员
私信 提问
Swift和Javascript的神奇魔法

前言 今天在网上看到了一篇介绍Swift和Javascript交互的文章,感觉作者写的很好,因此把作者文章中的主要知识点进行一个总结。 对于我个人而言,在项目中使用Javascript的原因有两个: 某些任...

llljj96
2017/05/23
0
0
Swift3.0语言教程字符串与URL的数据转换与自由转换

Swift3.0语言教程字符串与URL的数据转换与自由转换 Swift3.0语言教程字符串与URL的数据转换 Swift3.0语言教程字符串与URL的数据转换与自由转换,字符串中的字符永久保存除了可以保存在文件中...

大学霸
2016/11/21
69
0
你没看错:Swift可以直接调用Python函数库

上周Perfect又推出了新一轮服务器端Swift增强函数库:Perfect-Python。对,你没看错,在服务器端Swift 其实可以轻松从其他语种的函数库中直接拿来调用,不需要修改任何内容。如果没有类似经验...

rockford
2017/08/30
0
0
《Using Swift with Cocoa and Objective-C》总结

互用性 1>与Objective-C API交互 1.初始化 1)在OC中,初始化往往会有init、initWith字眼,但在swif却在这里都省略了,连分配内存的alloc,swift也会自动帮我们处理。 //Objective-CUITableVi...

Ethan-GOGO
2015/10/29
114
0
从零开始(3)

( 180 ) 根据系统状态栏判断网络状态 详情请点击此 ( 179 ) 仿微信"个人头像" 详情请点击此 ( 178 ) 从相册获取图片,并获取裁剪后图片(系统自带) 详情请点击此 ( 177 ) iOS打开系统相册显示中...

阴雨音语
2016/05/06
75
0

没有更多内容

加载失败,请刷新页面

加载更多

未初始化指针问题

《C和指针》书上说 int *a ... *a = 12 这样写声明一个变量,但未对指针初始化 如果指针是函数的形参,比如 void func(int *a) { (* a) = 12;//这样操作有无问题? } ======================...

天王盖地虎626
31分钟前
7
0
Python的一些细节 II

1. isinstance() 与 type() 区别 class type(name, bases, dict) name -- 类的名称。 bases -- 基类的元组。 dict -- 字典,类内定义的命名空间变量。 返回值:一个参数,返回对象的类型;三...

Eappo_Geng
42分钟前
4
0
笔试题-武汉珞珈德毅笔试题

1.写出Java语言的基本数据类型。 2.简述cookie和session区别。 1、cookie数据存放在客户的浏览器上,session数据放在服务器上。 2、cookie不是很安全,别人可以分析存放在本地的COOKIE并进行...

QuasimodoALei
53分钟前
7
0
IDEA Maven project: 'xxx/pom.xml' already exists in VFS

Failed to create a Maven project: ‘xxx/pom.xml‘ already exists in VFS idea创建项目后,发现项目有问题,删除后重新创建,提示错误如下。 解决办法 1.通过idea打开任意一个项目 2.File...

国产大熊猫
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部