2014-12-02 165 views
20

我想在swift中重命名類名,但它給了我錯誤Can't refector swift code。我想知道重命名將反映在整個項目中的文件的最佳方式如何在swift中重命名類名?

+3

全局搜索和與關心 – 2014-12-02 04:30:02

+1

取代看到這個答案http://stackoverflow.com/questions/15839664/xcode-c-and-objective-c-refactoring – Kalenda 2014-12-02 04:33:30

+1

@ moise2022:不,該問題及其答案是Objective-C和doe不適用於Swift代碼。 – 2014-12-02 06:43:10

回答

3

現在有可能在Xcode 9

右鍵點擊班級名稱並選擇重命名

26

目前,您無法在Swift中重構。但是,您可以在項目中執行查找菜單>查找和替換。 (小心)

編輯: Xcode 9允許您重構。

突出你的屬性/功能,並選擇編輯器菜單 - >重構 - >重命名

等待第二個或兩個的Xcode 9掃描您的項目所有事件,然後輸入新的名稱。

+0

你必須在project.pbxproj文件中重命名它,對不對? – 2015-10-28 18:08:11

+0

@IvanLesko - 不,如果你在所有應該足夠的源代碼中重新命名它。 – Caroline 2015-10-28 22:35:09

+0

@ Caroline哇,仍然三年後不能在Swift中重命名:/ – JHollanti 2017-08-03 08:23:01

4

在做了@Caroline指出的之後,您還應該更改.swift文件的名稱,因爲它不會使用Find > Find and replace...更改。爲此,您可以單擊.swift類的名稱並根據需要重命名它。

enter image description here

我使用XCode 8,這是我能找到在整個工程改變我的類名的最佳選擇。

0
  1. 查找&替換由cmd + shift + F
  2. 重命名類的名稱。
  3. 如果使用故事板/筆尖文件,請不要忘記將您在Show the identify inspector中指定的班級更改爲新的班級名稱。

TIP搜索領域下設餘地Find & Replace可以使這項工作清晰。

1

隨着Xcode 9,將於2017年秋季發佈 - 開發人員將能夠 - 1.重構他們的Swift代碼。 2.重命名Swift項目類。 3.一次運行模擬器的多個實例。 4.以無線方式在物理設備上運行和調試。 5.直接從XCode訪問,拖放,推送並提交到Git。

我個人最喜歡的問題是用多行紅線突出顯示問題的句子。

This WWDC 2017 session is a good view

Xcode是讓我們更聰明。

+0

我們現在仍然可以使用測試版。 – user550088 2017-06-15 21:51:36

0

AppCode by Jetbrains可以很容易地重構/重命名Swift和Objective C類。 這不是免費的,但它做得很好。

0
  1. 點擊Find - >Find and Replace in Workspace

enter image description here

  • 重命名它,例如我重命名ChatViewControllerChatVC然後打Enter。這通常也會重命名故事板中的命名,所以它非常方便,但仔細檢查一下是否確實要確保它已更改。
  • enter image description here

  • 最後,不要忘了文件本身重命名項目導航
  • enter image description here