Iphone 重命名Xcode中的类:重构。。。显示为灰色(已禁用)。为什么?
为什么重构…在Xcode中变灰(禁用)Iphone 重命名Xcode中的类:重构。。。显示为灰色(已禁用)。为什么?,iphone,xcode,refactoring,Iphone,Xcode,Refactoring,为什么重构…在Xcode中变灰(禁用) 我想重命名一个类。在其头文件中选择该类的符号,即@interface后面的位。如果你使用Objto-C++(即混合ObjuleC和C++代码),那么Xcode中的重构就被禁用了,因为它不支持C++代码的重构。如果受影响的文件(很可能是你的类中的文件),也可能禁用“< /P> < P>重构”。未保存。对于我来说,我意识到重构已被禁用,因为我打开的Xcode项目引用了丢失的基本SDK。编辑项目设置,并在“构建”选项卡中将基本SDK设置为您拥有的SDK(就像我使
我想重命名一个类。在其头文件中选择该类的符号,即
@interface
后面的位。如果你使用Objto-C++(即混合ObjuleC和C++代码),那么Xcode中的重构就被禁用了,因为它不支持C++代码的重构。如果受影响的文件(很可能是你的类中的文件),也可能禁用“< /P> < P>重构”。未保存。对于我来说,我意识到重构已被禁用,因为我打开的Xcode项目引用了丢失的基本SDK。编辑项目设置,并在“构建”选项卡中将基本SDK设置为您拥有的SDK(就像我使用的是iOS 4.2)。这为我启用了重构。此外,您可能会在xcode外部重命名该类的文件名,或者通过按住ctrl键单击该文件名然后重命名它。
如果文件名与类名不匹配,xcode拒绝重构。也有此问题。我试着查找丢失的SDK,保存文件,并查找上面提到的Objective-C++代码,修复我的机器所需要的只是重新启动XCode 看起来还是有点像马车
顺便说一句,这是针对XCode 4.0.1的我将在finder中打开我的项目,然后通过获取信息来更改文件名 之后,在xcode->projectnavigator我删除了这些文件 最后,我右键单击该类并将文件添加到…,然后再次添加这些文件
这对我来说很有效。我已经使用Xcode 5年了,而重构从来都没有正常工作过(即使是Xcode 4.6也存在严重的bug,它会损坏您的源代码!) 解决方法一直是(即使在苹果的代码失败的情况下,仍然100%有效)
(这一次出现了错误错误:“无法确定的语言”,其中一条错误消息是Apple在其中放置了错误的文本)转到您的类的头文件,找到与此类似的行:
@interface YourClassName
右键单击类符号(例如,你的类名),你应该能够选择重构->重命名
我刚刚尝试了这个,它在Xcode 5中工作。如果您首先在project navigator中更改文件名,重构就可以工作。这可能有点晚了,但我偶然发现了这篇文章,因为我无法将我的“ViewController.swift”文件重构为“WhateViewController.swift”。我尝试在项目导航器中选择文件,然后从顶部菜单中选择“编辑器->重构”,但是“重命名”总是灰显 相反,有效的方法是从编辑器中选择ViewController名称。因此,如果你有:
class ViewController: UIViewController {
// Code here...
}
突出显示“ViewController”单词,然后从菜单中选择重构,或者右键单击并选择重构->重命名
希望这有帮助…我的类的头文件只有@interface,没有@class。但是在@interface后面选择符号似乎很有效。@class if用于转发声明…这也困扰了我很长一段时间。谢谢即使这样,也不能在xcode 4中启用重构。我越来越绝望了,为什么苹果不改进他们的重构技术呢。有月食要跟随,怎么做事@karim-它从来没有在Xcode中工作过,请参阅下面我的答案,以了解每次都有效的解决方法在Interface Builder中为我节省一个xib文件重新启用重构,即使重新启动Xcode也无济于事,谢谢+这是我的荣幸。XCode的某些角落仍然有粗糙区域,这就是其中之一。有时,如果保存不能启用重构,则重建会。非常遗憾,差不多2年后,它仍然无法重构Objective-C对象。@christophercotton尝试了将近8年后,它仍然没有实现。是的,我最近(2014年5月)尝试过这个,Xcode官方的“重构”菜单选项仍然被破坏,它仍然会破坏您的源代码。我感到惊讶的是,苹果公司的员工并没有为此烦恼。