Можно ли переименовать/реорганизовать файл класса и переименовать ли он фактический файл на диске? Если да, то как я могу это сделать?Переименовать или рефакторировать файлы в Xcode
ответ
Самый безопасный способ переименования файлов - реорганизовать имя класса с помощью команды Xcode «Refactor». Используя эту команду, убедитесь, что ваш код также обновлен везде, где указывается файл или класс (включая NIB).
Щелкните правой кнопкой мыши имя класса в интерфейсе (.h
), выберите , и Xcode проведет вас через процесс, позволяя предварительно просмотреть изменения до того, как вы их совершите.
Подробнее:
Щелкните правой кнопкой мыши на имени класса (после @interface
) и выберите Refactor-> Переименовать. Например, щелкните правой кнопкой мыши на ViewController
в этом коде:
@interface ViewController : UIViewController
Введите новое имя для класса:
Xcode позволит вам просмотреть изменения, прежде чем совершить ,
Вы также можете выделить имя класса и использовать Edit->Refactor
меню Xcode, либо даже сопоставить его с помощью сочетания клавиш, если вы хотите.
Если вы действительно хотите переименовать файл, не затрагивая какой-либо код, нажмите на имя в панели «Навигатор» (левая панель), подождите секунду, а затем щелкните еще раз. Имя будет выделено, и вы можете ввести новый. Вы также можете удалить из Навигатора, переименовать файл в Finder и повторно добавить его в свой проект.
По умолчанию Xcode переименует файл при его переименовании либо в навигаторе файлов (в левой части экрана), либо при использовании инспектора.
Привет, я хотел бы переименовать протокол (SideToolBarDelegate.h) с ToolBarDelegate.h, но Xcode говорит мне: «SideToolBarDelegate.h импортируется или включается в файл Objective-C++, а не Objective-C или C:». Как я могу переименовать его, пожалуйста? Спасибо – samir
Найти и заменить. – bbum
я извиняюсь, не работает. – samir
Работы для Xcode 4.2.1: выберите файл в проекте штурмана (по умолчанию левой панели) и нажмите [Закладка]
Если вы переименовали файл вручную, и используются Найти и Заменить, чтобы переименовать имя класса , убедитесь, что файл добавлен в «Скомпилировать источники в фазах сборки вашей цели», поскольку он, вероятно, будет удален.
Выберите Refactor-> Переименовать ответ nevan короля также отлично работает на Xcode версии 7.0 бета (7A120f)
Это не дает ответа на вопрос. Чтобы критиковать или запросить разъяснения у автора, оставьте комментарий ниже своего сообщения - вы всегда можете прокомментировать свои собственные сообщения, и как только у вас будет достаточно [репутации] (http://stackoverflow.com/help/whats-reputation), вы будете быть в состоянии [прокомментировать любое сообщение] (http://stackoverflow.com/help/privileges/comment). –
Потому что у меня нет 50 репутации. Вот что я отправляю ответ на ответ. –
Этот подход лучше всего, поскольку он переименует экземпляры классов, хранящиеся в других файлах или XIB-файлах. –
человек - я хотел знать, как это делается целую вечность! – roocell
Это, похоже, не работает с тех пор, как я обновился до 4.3. В файле заголовка (.h) XCode жалуется, что файл не добавлен в цель, чего не должно быть, поскольку это файл заголовка. Если вы пытаетесь использовать файл .m, он жалуется, что это не символ (класс, функция и т. Д.). – Michael