博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Xcode 创建自定义模板
阅读量:6525 次
发布时间:2019-06-24

本文共 2032 字,大约阅读时间需要 6 分钟。

背景

在团队进行项目开发的时候,一般都会统一代码风格,以方便代码的维护。

比如在以 Swift 为主的工程中,并不存在头文件的概念,声明与实现都是放在同一个文件,如果不对代码按一定规则进行分割,那在较复杂的对象文件中,对于不同的开发者来说,维护起来的成本要高上不少。

但是统一代码风格,则要求每个参与项目的开发者每个源码文件都按照规范来编写,既繁琐又浪费时间,所以可以借助 Xcode 的自定义模板功能来完成,既实现统一规范,同时不耗费额外的时间。

创建模板

Xcode 版本:Version 8.0 (8A218a)

系统模板

Xcode 系统模板的路径是 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Templates/,文件夹里面有文件模板 File Templates 和工程模板 Project Templates,分别对应创建文件时的选项和创建工程时的选项:

接下来,可以模仿 Cocoa Touch Class 模板 (路径:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Templates/File Templates/Source/Cocoa Touch Class.xctemplat)创建自定义模板。

自定义模板

创建自定义模板,我们需要将对应的模板文件放到 /Users/xxx/Library/Developer/Xcode/Templates/File Templatesxxx 为用户名)下,新建一个 Custom 的文件夹,然后按下图所示创建对应的文件(可以从系统的Cocoa Touch Class.xctemplate 复制对应的文件过来):

  • Objective-CSwift 是模板使用对应语言
  • ___FILEBASENAME___:模板内容格式声明
  • TemplateIcon 是模板对应的图标
  • TemplateInfo.plist:是模板内容说明

修改 Swift 文件夹下的 ___FILEBASENAME___.swift 文件为(Objective-C 此处不举例):

////  ___FILENAME___//  ___PROJECTNAME___////  Created by ___FULLUSERNAME___ on ___DATE___.//___COPYRIGHT___//import UIKit// MARK: - 外部接口extension ___FILEBASENAMEASIDENTIFIER___ {    }// MARK: - 事件响应extension ___FILEBASENAMEASIDENTIFIER___ {    }public class ___FILEBASENAMEASIDENTIFIER___: UIViewController {        // MARK: - 生命周期            public override func viewDidLoad() {        super.viewDidLoad()        setupParameter()        setupUI()        layoutPageSubviews()    }        public override func didReceiveMemoryWarning() {        super.didReceiveMemoryWarning()    }        // MARK: - 界面初始化            /// 初始化UI    fileprivate func setupUI() {    }        /// 初始化布局    fileprivate func layoutPageSubviews() {            }        /// 初始化参数    fileprivate func setupParameter() {            }            // MARK: - 内部接口            // MARK: - 公共成员变量            // MARK: - 私有成员变量            // MARK: - 子控件            // MARK: - 测试        }复制代码

现在可以选中刚刚创建的文件模板:

参考

转载于:https://juejin.im/post/5a30e6c9f265da432652d3fb

你可能感兴趣的文章
脏读,幻读,不可重复读解释和例子
查看>>
Tomcat指定(JDK路径)JAVA_HOME而不用环境变量
查看>>
银行卡信息安全事件频发 互联网站成数据泄露"重灾区"
查看>>
云服务器 ECS 使用OpenAPI管理ECS:使用OpenAPI弹性创建ECS实例
查看>>
写个软件来防止服务器网站CPU百分百
查看>>
智能城市里,“公共电话亭”的存在意味着什么?
查看>>
JVM分代垃圾回收策略的基础概念
查看>>
《交互式程序设计 第2版》一3.5 捕获简单用户交互行为
查看>>
5G技术的5大猜想
查看>>
MongoDB 3.0(1):CentOS7 安装MongoDB 3.0服务
查看>>
别随便安装 Pokemon GO被曝藏恶意后门
查看>>
让数据会思考会说话,为出海企业提供多样化数据智能解决方案
查看>>
我眼中的自动化测试框架设计要点
查看>>
FLIF:自由的无损图像格式
查看>>
Google开源Inception-ResNet-v2,提升图像分类水准
查看>>
Opera 出售细节曝光:昆仑出资1.68亿美元
查看>>
CentOS 5.3 下快速安装配置 PPTP ××× 服务器
查看>>
产品经理学习总结之技术和设计篇
查看>>
23种设计模式(15):备忘录模式
查看>>
java基础学习总结——IO流
查看>>