Xcode может использовать только код C и Objective-C для рефакторинга. Как переименовать название быстрого слова в Xcode 6?
Я создал новый проект приложения Single View в бета-версии Xcode 6. Я хочу переименовать swift-класс из ViewController.swift
в другое имя. Но когда я выбираю Refactor → Rename, он дает ошибку Xcode can only refactor C and Objective-C code
.
![enter image description here]()
Любая идея, как переименовать swift-класс в Xcode 6?
UPDATE:
Наконец, Xcode 9 поддерживает рефакторинг для Swift. Для добавления этой базовой функции Apple потребовалось 3 года. Рефакторинг
Ответы
Ответ 1
Вы можете изменить имя класса в File Inspector в правой части Xcode6.
- откройте свой класс
- перейдите в File Inspector > Определите и введите раздел
- переименуйте существующий класс в поле "name".
Это все! Ранее я вручную переименовал имя класса в файле класса.
Ответ 2
Я использую Find > Find and Replace in Project, это не идеально, но он работает.
Ответ 3
Я использую этот способ:
- Вы можете позиционировать курсор на переменной, которую вы хотите переименовать
- Выбрать редактор - Изменить все в области (^ ⌘E)
- Переименуйте переменную и автоматически все вхождения переменных - это редактировать
Ответ 4
Из этого урока.
Разделите код быстрого доступа iOS8
Прежде всего, давайте переименуем наш View Controller в нечто более значимое. Откройте файл ViewController.swift и замените все ссылки на "ViewController" на наше новое имя, "SearchResultsViewController". Переименуйте файл также в SearchResultsViewController.swift.
Если вы попытаетесь запустить приложение, здесь вы получите сбой. Это связано с тем, что наш файл раскадровки не обновлен, чтобы узнать о новом классе! Итак, откройте Main.storyboard, выберите свой объект View Controller в сцене (левая сторона nav), а затем выберите Identity Inspector (правая сторона, третья кнопка.)
Здесь можно изменить класс с "ViewController" на "SearchResultsViewController". Теперь мы должны вернуться в нужное русло. Убедитесь, что проект по-прежнему работает и позволяет продолжить.
Ответ 5
К сожалению, Apple еще не успела реализовать его.
Подробнее см. http://www.quora.com/Why-isnt-there-a-refactoring-feature-for-Swift-language-in-Xcode-6.
Ответ 6
Xcode 9
Xcode 9 теперь поддерживает переименование в Swift. Это было объявлено в WWDC 2017.
![введите описание изображения здесь]()