2013-12-21 89 views
6

在Xcode中,如果要調用一系列將標誌作爲參數的方法,那麼當您鍵入右括號字符時,它會在最後一個標誌處創建一個新的左括號,而不是在行首。有沒有什麼辦法解決這一問題?有沒有辦法讓Xcode更加智能地處理括號?

// Type this... 
    someFunc withFlags:FlagA|FlagB|FlagC 

    // Now type a right bracket ] 
    someFunc withFlags:FlagA|FlagB|[FlagC ] 

    // It should be this: 
    [someFunc withFlags:FlagA|FlagB|FlagC] 
+0

非常討厭,我同意。 –

+1

是的:[file a bug!](http://bugreport.apple.com/) – jtbandes

+1

僅供參考:提交了一個Apple的錯誤:15713698 – GoldenJoe

回答

1

不幸的是,沒有辦法。儘管向蘋果公司提交bug report將使其更有可能得到修復。如果此行爲違反您的flow,則可以在設置中將其關閉。 Xcode - >首選項 - >文本編輯 - >「自動插入大括號('}')」

3

啓動Xcode-> Preferences-> TextEditing-> Editing->在ObjectiveC方法中自動平衡括號調用

我正在使用Xcode版本5.0.2(5A3005)。下面他們兩個對我來說工作得很好。當我關閉右側支架時,它會自動創建左側支架。

[self someFunc:1 Flag:YES|YES|YES]; 
[self someFunc:YES|YES|YES]; 

- (void)someFunc:(int)x Flag:(BOOL)yes 
{ 

} 
- (void)someFunc:(BOOL)yes 
{ 

} 

這裏是我的Xcode設置

enter image description here

0

類型的第一支架當您啓動線。 這就是你應該先做的。 你也應該在你的旗幟周圍使用圓括號。

+1

爲什麼要在旗幟周圍加上括號? – rmaddy

+0

真正的可讀性。表明他們是一回事。我傾向於試圖通過直觀的方式來制定事情。我知道它不會改變彙編。您可以在Apple代碼中看到相同的內容。這也有助於Xcode在鍵入結束括號但未輸入第一個括號時知道範圍。 – uchuugaka

+0

我認爲用括號作爲一種習慣的另一件事是,當你養成這種習慣時,你可以避免奇怪的操作符優先級問題。 C – uchuugaka

相關問題