小工具      在线工具  汉语词典  dos游戏  css  js  c++  java

swift3.0 类字符串到类(字符串到 ViewController)

Swift学习 额外说明

收录于:52天前


//MARK: -- 根据类文件字符串转换为ViewController
extension ThirdViewController
{
     /// 类文件字符串转换为ViewController
     /// - Parameter childControllerName: VC的字符串
     /// - Returns: ViewController
     func getVCByClassString(_ childControllerName: String) -> UIViewController?{
        
             // 1.获取命名空间
             // 通过字典的键来取值,如果键名不存在,那么取出来的值有可能就为没值.所以通过字典取出的值的类型为AnyObject?
             guard let clsName = Bundle.main.infoDictionary!["CFBundleExecutable"] else {
                     print("命名空间不存在")
                     return nil
                 }
             // 2.通过命名空间和类名转换成类
             let cls : AnyClass? = NSClassFromString((clsName as! String) + "." + childControllerName)
        
             // swift 中通过Class创建一个对象,必须告诉系统Class的类型
             guard let clsType = cls as? UIViewController.Type else {
                     print("无法转换成UIViewController")
                     return nil
                 }
             // 3.通过Class创建对象
             let childController = clsType.init()
        
             return childController
         }
}


. . .

相关推荐

额外说明

Spring Cloud学习(三)——服务注册到Eureka注册中心

一、创建子模块项目 二、pom文件中添加依赖 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifac

额外说明

Git基础理论和常用命令

Git基本理论 工作区 Git本地有三个工作区,再加上远程的git仓库共四个工作区: 工作目录(Working Directory) 工作区,就是你平时存放项目代码的地方 暂存区(Stage/Index) 暂存区,用于临时存放你的改动 资源库(Repos

额外说明

微信小程序——拖拽定位

QQ 1274510382 Wechat JNZ_aming 商业联盟 QQ群538250800 技术搞事 QQ群599020441 解决方案 QQ群152889761 加入我们 QQ群649347320 共享学习 QQ群674240731 纪年科技am

额外说明

vue2中使用mock数据发送请求

1.安装 npm i [email protected]  2.准备json数据 说明:mock数据需要的图片放置到public文件夹中(原封不动的打包到dist文件夹) [ { "id": "1", "imgUrl": "/i

额外说明

【Unity-UGUI控件全面解析】| Image 图片组件详解

-【Unity-UGUI控件全面解析】| Image 图片组件详解 一、组件介绍 二、组件属性面板 2.1 Image Type 三、代码操作组件 四、组件常用方法示例 4.1 简易血条制作 4.2 简易技能冷却条制作 五、组件相关扩展使用 5.1 Ma

额外说明

Markdown 数学公式指导手册

声明: 1. 文章转载于https://www.zybuluo.com/codeep/note/163962 2. 原文章直接放到CSDN有部分代码报错或显示异常,故作了修改,有一些修改后正常显示,但仍有一些报错(已作标记),如您可以解决,欢迎留言。 收

额外说明

SpringBoot 实现 PDF 添加水印有哪些方案?

方式一:使用 Apache PDFBox 库 PDFBox 是一个流行的、免费的、用 Java 编写的库,它可以用来创建、修改和提取 PDF 内容。PDFBox 提供了许多 API,包括添加文本水印的功能。 添加 PDFBox 依赖 首先,在 pom.x

额外说明

Golang中Gin 参数绑定和验证的中间件

学习目标: 1. 学习在Golang中使用Gin参数绑定和验证的中间件,了解不同参数类型的绑定和验证方式。 学习内容: Gin框架提供了很多常用的中间件,其中就包括参数绑定和验证的中间件。在使用Gin框架中进行数据绑定和验证时,可以使用Gin内置的Bin

额外说明

leetcode 133. 克隆图

leetcode 133. 克隆图 给你无向 连通 图中一个节点的引用,请你返回该图的 深拷贝(克隆)。 图中的每个节点都包含它的值 val(int) 和其邻居的列表(list[Node])。 class Node { public int val; p

额外说明

机器学习强基计划6-2:详细推导马尔科夫随机场(MRF)及其应用(附例题)

目录 0 写在前面 1 无向概率图 2 马尔科夫随机场 3 马尔科夫独立性 4 例题分析 0 写在前面 机器学习强基计划聚焦深度和广度,加深对机器学习模型的理解与应用。“深”在详细推导算法模型背后的数学原理;“广”在分析多个机器学习模型:决策树、支持向量

ads via 小工具