你如何处理Xcode对块的恼人的自动完成行为?

时间:2014-02-11 18:10:29

标签: xcode

XCode的自动完成有时可能是一个痛苦的屁股,这里举个例子:

enter image description here

似乎不可能只输入一些内容来替换completionHander占位符而不删除整个突出显示的文本部分 - 如果我点击Tab并开始输入,那么Xcode会删除以蓝色突出显示的所有内容,而我们要做的是保留^(NSArray *地标,NSError *错误)部分和类型在我们自己的内容中代替completionHandler占位符。

在有用的情况下是否有任何技巧可以保持自动完成功能,但要使这些和类似示例可用而不是无法使用?

2 个答案:

答案 0 :(得分:4)

点击标签,但不要开始输入,只需按 Enter 即可。 Xcode会将选择扩展为一个空实现的块。

之前:

before

后:

after

答案 1 :(得分:1)

当突出显示块的占位符时,按返回。它将被完整的块声明和一组空括号所取代,里面有一个突出显示的占位符,您可以开始为块的主体键入代码; e.g。

[geocoder reverseGeocodeLocation:location 
               completionHandler:^(NSArray *placemarks, NSError *error) {
                                     <code>
                                 }]