如何在不丢失连接的情况下重命名IBOutlet属性

Pha*_*inh 12 xcode ios

我使用旧项目,在项目的某些部分,命名约定不好,所以我想改变它.
例如:

@property (weak, nonatomic) IBOutlet UIButton *btnRequestCode;
rename it to -> @property (weak, nonatomic) IBOutlet UIButton *requestCodeButton;
Run Code Online (Sandbox Code Playgroud)

我知道我可以删除IBOutlet然后重新连接,但如果不小心可能需要很多时间和容易犯错误

有什么安全快捷的方法吗?

我尝试过Refactor - >重命名,但它不起作用并给我一个警告

在此输入图像描述

任何帮助或建议将非常感谢.

Leo*_*Leo 19

这就是我通常做的事情

  1. 右键单击IBOutlet名称,然后选择"在工作区中查找所选文本"

在此输入图像描述

  1. 单击查找,然后选择替换

在此输入图像描述

3.替换为您想要的名称

4. 如果您确定,可以单击全部替换.您还可以单击预览以替换每个更改

在此输入图像描述


Mob*_*Dan 9

Xcode 9,Refactor> Rename

在Xcode 9中,您可以同时重命名代码和故事板中的插座(或操作).

*免责声明:此功能仅适用于Xcode 9(2017年9月发布)及更高版本.确保在使用之前备份项目.更改插座名称后,测试受影响的屏幕以确保没有问题.我在一个示例Objective C项目中成功测试了这个,但它可能会导致现有的,更复杂的项目出现问题.

重命名插座......  

1.导航到头文件中的outlet

@property (weak, nonatomic) IBOutlet UIButton *btnRequestCode;
Run Code Online (Sandbox Code Playgroud)

 

2.右键单击插座,选择"重构>重命名...".

右键单击插座

 

3.更改插座名称

4.选择"重命名"按钮或Enter键

更改插座名称

 

插座在代码和故事板中重命名

@property (weak, nonatomic) IBOutlet UIButton *requestCodeButton;
Run Code Online (Sandbox Code Playgroud)