Ответы:
Выберите символ класса в его заголовочном файле, то есть бит сразу после него @interface
. Затем следует включить рефакторинг.
Если вы используете Objective-C ++ (то есть смешиваете Objective-C с кодом C ++), то рефакторинг в xcode отключен, поскольку он не поддерживает рефакторинг кода C ++.
Рефакторинг также может быть отключен, если затронутые файлы (скорее всего, файл с вашим классом в нем) не сохранены.
Я использую Xcode уже 5 лет, и рефакторинг никогда не работал должным образом (даже в xcode 4.6 есть серьезные ошибки, из-за которых он ВЕРНЕТ ваш исходный код!).
Обходной путь всегда был (все еще работает на 100%, даже в случаях, когда код Apple дает сбой)
У меня 100% успех этого метода. Я просто попробовал провести рефакторинг с помощью Apple «Refactor -> Rename» в последней версии xcode, и это снова не удалось!
(на этот раз с неправильной ошибкой: «Невозможно определить язык», одно из тех сообщений об ошибках, в которых Apple вставила неправильный текст на место)
Для меня я понял, что рефакторинг был отключен, потому что проект Xcode, который я открыл, ссылался на отсутствующий базовый SDK. Измените настройки проекта и на вкладке «Сборка» установите для базового SDK тот, который у вас есть (например, для меня это была iOS 4.2). Это позволило мне выполнить рефакторинг.
Перейдите в файл заголовка вашего класса и найдите строку, которая выглядит примерно так:
@interface YourClassName
Щелкните правой кнопкой мыши символ класса (например, YourClassName), и вы сможете выбрать Refactor -> Rename ...
Я просто попробовал это, и он работает в Xcode 5.