swift3.0 类字符串转类(字符串转ViewController)
1 /// 类文件字符串转换为ViewController 2 /// 3 /// - Parameter childControllerName: VC的字符串 4 /// - Returns: ViewController 5 func VCSTRING_TO_VIEWCONTROLLER(_ childControllerName: String) -> UIViewController?{ 6 7 // 1.获取命名空间 8 // 通过字典的键来取值,如果键名不存在,那么取出来的值有可能就为没值.所以通过字典取出的值的类型为AnyObject? 9 guard let clsName = Bundle.main.infoDictionary!["CFBundleExecutable"] else { 10 print("命名空间不存在") 11 return nil 12 } 13 // 2.通过命名空间和类名转换成类 14 let cls : AnyClass? = NSClassFromString((clsName as! String) + "." + childControllerName) 15 16 // swift 中通过Class创建一个对象,必须告诉系统Class的类型 17 guard let clsType = cls as? UIViewController.Type else { 18 print("无法转换成UIViewController") 19 return nil 20 } 21 // 3.通过Class创建对象 22 let childController = clsType.init() 23 24 return childController 25 }
以上代码示例:
使用类的字符串转为ViewController,以实际应用过!
转载于:https://www.cnblogs.com/PLA-Artillery/p/6558715.html
swift3.0 类字符串转类(字符串转ViewController)相关推荐
- Swift3.0语言教程使用URL字符串
Swift3.0语言教程使用URL字符串 Swift3.0语言教程使用URL字符串,和路径一样,URL其实也是字符串,我们可以将这些字符串称为URL字符串.本小节将讲解URL字符串的使用. 1.编码 ...
- Swift3.0语言教程使用路径字符串
Swift3.0语言教程使用路径字符串 Swift3.0语言教程使用路径字符串,路径其实是字符串的一种,我们称为路径字符串.本小节将讲解如何使用路径字符串. 1.组合路径 开发者可以将数组快速的组合成 ...
- Swift3.0语言教程替换子字符串
Swift3.0语言教程替换子字符串 Swift3.0语言教程替换子字符串,替换子字符串其实就是将字符串中的子字符串删除,然后再进行添加.为了让这一繁琐的过程变的简单,NSString提供了替换子字符 ...
- Swift3.0语言教程获取C字符串
Swift3.0语言教程获取C字符串 Swift3.0语言教程获取C字符串,为了让Swift和C语言可以实现很好的交互,开发者可以使用NSString的cString(using:)方法在指定编码格式 ...
- Swift3.0语言教程字符串转换为数字值
Swift3.0语言教程字符串转换为数字值 Swift3.0语言教程字符串转换为数字值,在NSString中,开发者可以将字符串转换为数字值,通过这些数字值可以实现一些功能,如加法运算.减法运算等.数 ...
- Swift3.0语言教程组合字符串
Swift3.0语言教程组合字符串 Swift3.0语言教程组合字符串,当开发者想要将已经存在的字符串进行组合,形成一个新的字符串,可以使用NSString中的两个方法,分别为appending(_: ...
- 字符串工具类、数组工具类、集合工具类、转型操作工具类、编码与解码操作工具类...
package hjp.smart4j.framework.util;import org.apache.commons.lang3.StringUtils;/*** 字符串工具类*/ public ...
- 【原创】字符串工具类--找出单元字符串
package week01;import java.util.regex.Matcher; import java.util.regex.Pattern;/***** * 字符串帮助类* @auth ...
- 【C++ 语言】C++字符串 ( string 类 | 创建方法 | 控制台输出 | 字符串操作 | 栈内存字符串对象 | string* )
文章目录 C++ 字符串 对象 C++ 字符串 对象 创建方法 C++ 字符串 对象 输出到控制台 C++ 字符串 拼接 C++ 字符串 方法调用 ( 栈内存对象 ) C++ 字符串 方法调用 ( 堆 ...
- .NET字符串操作类StringHelper (C#版)
using System; using System.Collections.Generic; using System.Linq; using System.Text; us ...
最新文章
- mysql 环形复制_mysql复制(Replication)
- [Day9]面向对象
- imagenet数据格式以及python文件处理的一些函数
- Java动物类enjoy方法打印_Java反射学习-2 - 获取Class对象的三种方式
- 324. Wiggle Sort II | 324. 摆动排序 II(降序穿插)
- revit如何根据坐标进行画线_铭成教你如何根据同步带的齿形进行选型
- 【Pytorch神经网络理论篇】 20 神经网络中的注意力机制
- 中如何拉取git代码_git使用教程4pycharm拉取git仓库项目代码
- 怎么看电脑是不是linux系统,怎么查看自己的电脑系统是什么版本
- 我为什么辞去 Netflix 价值 45 万美元的开发工作
- MySQL查询优化:查询慢原因和解决技巧
- ROS Learning-019 learning_tf-03(编程) 添加额外的坐标系 (Python版)
- uniapp引入阿里图标库
- 服务器音频文件缓存,音频文件如何缓存到本地,和播放缓存到本地的音频文件...
- IDL多进程批处理遥感数据
- mintUI MessageBox confirm弹框确认和取消按钮的使用-回调
- 计算机网络中man是,计算机网络分类为LAN、MAN和()。
- 移动端字体加粗的解决方案
- Java基础项目 开发团队分配管理系统
- Joomla建站之幻灯片
热门文章
- 【转】 NSArray copy 问题
- 避免内存泄漏 - C++快速入门38
- Android倒计时案例展示
- vue项目中iview表单验证 this.$refs[name].validate(valid = { }无效
- 学习随笔:Django 补充及常见Web攻击 和 ueditor
- 卷积神经网络之AlexNet
- redis学习(二) redis数据结构介绍以及常用命令
- JS 的引用赋值与传值赋值
- C++函数指针和类成员函数指针
- CSS强制英文、中文换行与不换行