在iOS项目中,这样才能完美的修改项目名称
https://www.cnblogs.com/liangyi-cn/p/8657474.html
前言:
在iOS开发中,有时候想改一下项目的名字,这会遇到很多麻烦。
- 直接改项目名的话,Xcode不会帮你改所有的名字
- 项目中的很多文件、文件夹或者是项目设置的项,都是不能随便改的,有时候改着改着,就会编译不了。
所以各位重命名项目时,记得先备份好一份噢。本文我会介绍一种“完美”的修改方法。
注意:重命名项目时,记得先备份好一份
注意:重命名项目时,记得先备份好一份
注意:重命名项目时,记得先备份好一份
重要的事情说三遍
本文会把一个项目名叫 OldDemo123 改成 NewDemo。
正文:
修改前的项目结构:

1、打开项目,对项目名进行 Rename
1.1、选中项目名并按下回车,进入可编辑状态:

1.2、输入新的项目名字,然后按回车,弹出改名前和改名后的文件对名,这时点击 Rename:

2、修改文件夹名字和显示包内容
2.1、打开应用所在文件夹,修改文件夹名字
注意:
- 文件夹
NewDemoTests和NewDemoUITests里面也要修改 - 这里的
NewDemoTests,原先为OldDemo123Tests。
我们改名字时需要注意,只需要把旧名字(OldDemo123)替换成新名字(NewDemo)即可,不要把其它字符(Tests)删除!

2.2、选中 NewDemo.xcodeproj 右键打开 --> 显示包内容 --> 双击打开 project.pbxproj 。
2.3、打开 project.pbxproj 文件之后,用搜索快捷键 command + f 全局搜索旧的项目名 OldDemo123 ,并用新的项目名 NewDemo 进行替换。替换完成后进行保存 command + s,然后关闭。
注意:要把所有的 OldDemo123 更换成 NewDemo。

3、打开 NewDemo.xcodeproj 文件
注意:打开的是 NewDemo.xcodeproj 文件,而不是 NewDemo.xcworkspace文件。
3.1、此时会弹出提示框,点击 OK 就行。

3.2、显示此时项目结构和修改更新Podfile文件

如果你的项目里面没有使用CocoaPods的话,项目应该可以运行成功了。
使用CocoaPods的话,项目虽然表面看起来已经修改成功了,但是运行之后发现提示错误:

此时打开项目文件夹,找到 Podfile 文件,双击打开,修改 target 后的项目名为最新的项目名 NewDemo。
target 'NewDemo' do
pod 'AFNetworking', '~> 3.0'
end
然后在终端,用 cd 到项目目录下,运行 $ pod install,进行更新。
3.3、打开 NewDemo.xcworkspace 文件
此时文件显示错误:因为文件路径的原因

选中显示红色的 OldDemo123 文件,点击右侧文件夹小图标,更改路径。

路径更改成功之后,项目基本就可以运行成功了。
4、修改 Scheme 名
选中 OldDemo123 --> 下拉中选中 Manage Schemes --> 弹出一个显示框。

选中要修改的 OldDemo123 那一行,并按下回车,进行修改新的名称 NewDemo,然后点击 Close。

5、项目内全局修改、替换
其实到上面,项目已经基本修改完成了,但是对于一些处女座、强迫症患者来说,还有一些问题,如下:

5.1、全局搜索旧的项目名

5.2、把 Find 修改为 Replace,输入新的项目名,点击 Replace All 全局替换。

最后:
到此,项目名已经完全修改完成了,小伙伴们可以尝试修改了。
下面是修改后的项目结构:

注意:重命名项目时,记得先备份好一份
转载出处:
作者:0_0
链接:https://www.jianshu.com/p/2887d6fb5769
來源:简书
在iOS项目中,这样才能完美的修改项目名称的更多相关文章
- 直接在CMake项目中编译GoogleTest和GoogleMock作为项目的一部分
直接在CMake项目中编译GoogleTest和GoogleMock作为项目的一部分 本文是关于如何将GoogleTest和GoogleMock在没有预先编译安装在机器的情况下,直接在项目中作为项目的 ...
- 使用ShareSDK实现第三方授权登录、分享以及获取用户资料效果,项目中包含:源码+效果图+项目结构图
[Android应用开发详解]第01期:第三方授权认证(一)实现第三方授权登录.分享以及获取用户资料 由于公司项目的需要,要实现在项目中使用第三方授权登录以及分享文字和图片等这样的效果,几经波折, ...
- 在Swift项目中使用OC,在OC项目中使用Swift
几天前,我开始新的App的开发了.终于有机会把swift用在实战中了,也学到了之前纯学语法时没有机会获得的知识. 这篇博文中,我就如何使用swift.OC混编做一个介绍. OC中使用Swift 首先, ...
- IT项目中使用 json格式数据 保存项目配置信息, 在配置文件再读取json文件的内容进行赋值
json格式小巧玲珑,适合做配置文件,特别是大型项目中, 可以将配置信息分类保存到不同的json文件中, 然后再在配置文件中读取配置文件的数据进行赋值, 这里以python为例进行说明: 假设在you ...
- 怎样在Web项目中的service业务层获取项目根路劲
这里我们有两个前提 1.没有使用struts2框架.没有使用servlet,无法给service层传递request对象. 2.使用了Spring框架. 那你可能问.会有这样的情况吗?答案是有的,比方 ...
- react项目中对dom元素样式修改的另一种方法以及将组件插入到node节点中
在项目中,以前如果遇到对dom元素的操作都是直接获取dom元素,比如说: 但是如果修改的样式比较多的话,不如直接"切换"dom元素,如下例子: 这样会节省一些性能.因为操作dom的 ...
- 在Qt项目中如何添加一个已有的项目作为子项目
新建一个子目录项目(具体方法参见<类似Visual Studio一样,使用Qt Creator管理多个项目,创建子项目>),然后需要添加的项目移动到该子目录项目目录下,再在其pro文件中添 ...
- PHP自练项目中个人中心创建,修改,验证(服务器端和客户端验证)
当注册成功到登录后进入个人中心,查看和修改自己的资料 第一步:创建个人中心: <?php //定义个常量,用来授权调用includes里面的文件 define('IN_TG',true); // ...
- 【IntelliJ IDEA】idea导入项目只显示项目中的文件,不显示项目结构
导入项目之后,只显示项目文件,不显示项目结构 解决方法 1.点击file->project structure..->Modules 点击右上角+加号 ->import Module ...
随机推荐
- at org.apache.hadoop.hbase.tmpl.master.BackupMasterStatusTmplImpl.renderNoFlush(BackupMasterStatusTm
at org.apache.hadoop.hbase.tmpl.master.BackupMasterStatusTmplImpl.renderNoFlush(BackupMasterStatusTm ...
- 教你如何用python和pygame制作一个简单的贪食蛇游戏,可自定义
1.效果图 2.完整的代码 #第1步:导出模块 import pygame, sys, random from pygame.locals import * # 第2步:定义颜色变量,在pygame中 ...
- 消息队列(七)--- RocketMQ延时发送和消息重试(半原创)
本文图片和部分总结来自于参考资料,半原创,侵删 问题 Rocketmq 重试是否有超时问题,假如超时了如何解决,是重新发送消息呢?还是一直等待 假如某个 msg 进入了重试队列(%RETRY_XXX% ...
- 09-Docker-Volumes数据管理
目录 09-Docker-Volumes数据管理 参考 数据卷类型 数据卷操作 bind数据卷 volume数据卷 tmpfs数据卷 09-Docker-Volumes数据管理 Docker Vers ...
- docker镜像拉取速度过慢的解决
前提是我们在linux环境下安装好了docker,并且可以正常启动关闭. 当我们对镜像进行拉取的时候,会发现速度非常的慢,停在下面这个界面很久也不动. 解决方法 进入阿里云官网,进入后搜索docker ...
- linux 下部署web 程序
linux 下部署web 程序 1. 创建ucenter用户 一般情况下,发布应用程序都不是使用root用户的,需要创建一个普通用户来发布程序: 创建ucenter用户: useradd -d /uc ...
- mvc 部分页
在一些复杂的项目中,我们经常会遇到一个页面存在很多模块,存在页面交互或者加载数据过多等问题,这种时候,我们很可能会考虑到通过使用部分页来解决这个问题(ps:当然还有很多的解决方案,在这里只是简单介绍这 ...
- [转]工作量证明(PoW)权益证明(PoS)和委任权益证明(DPoS)区别
原文链接 Both in the glossary and in some of our previous posts we've touched on mining and the two main ...
- Linux 服务器作为Nginx web服务器常见优化参数
内核参数调整cat /etc/sysctl.conf# sysctl settings are defined through files in # /usr/lib/sysctl.d/, /run/ ...
- mysql之mysql的安装
此次MySQL安装的版本为:MySQL8.0 系统为:centos6.9 64位 一.利用yum仓库安装 wget https://repo.mysql.com//mysql80-community- ...