我比较习惯使用 Eclipse 的IDEs,初次使用 Xcode 时感觉操作不便。在这里我总结了一些小技巧可帮助开发者更方便有效地进行Xcode开发。
自定义快捷键
在Eclipse中,我习惯于使用键盘不断的移动代码。三个简单的例子:
Alt + up/down : 向上/向下移动选定的代码
Alt + Cmd + up/down : 向上/向下复制选定的代码
Cmd + d : 删除当前行或选择区域
当使用Xcode时,我首先注意到没有这三个快捷键,这会大大降低我的开发效率。幸运的是,还有其他方法。让我们看一下这个文件:
- /Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Resources/IDETextKeyBindingSet.plist
这个文件包含一些键绑定,正如你所见,他们映射到一个或多个消息。因此,让我们在文件的末尾添加键绑定的自定义部分
</pre><pre name="code" class="html">.......
<key>My Custom Shortcuts</key>
<dict>
<key>Delete Current line</key>
<string>moveToBeginningOfLine:, deleteToEndOfLine:, deleteToEndOfParagraph:</string>
<key>Move Line Up</key>
<string>moveToBeginningOfLine:, selectLine:, cut:, moveUp:, paste:, moveUp:</string>
<key>Move Line Down</key>
<string>moveToBeginningOfLine:, selectLine:, cut:, moveDown:, paste:, moveUp:</string>
<key>Copy Line Up</key>
<string>moveToBeginningOfLine:, selectLine:, copy:, moveToBeginningOfLine:, paste:, moveUp:</string>
<key>Copy Line Down</key>
<string>moveToBeginningOfLine:, selectLine:, copy:, moveDown:, paste:, moveUp:</string>
</dict>
</dict>
</plist>
好了,在Xcode运行时添加快捷键可能有点奇怪,因此我建议在添加新的快捷键之前重启Xcode。重启Xcode之后,在Xcode参数设置中找到键绑定部分( Cmd +, )。在底部,你可以找到自定义键绑定,准备好添加快捷键吧!
在参数设置中自定义快捷键( Cmd+, )
虽然这一步骤是正确的,但是它没有实现Eclipse的逻辑。例如,在Eclipse中,如果没有动态选取,这个方法对选择区域和当前行都起作用;然而,上述快捷键只对当前行起作用。
重构快捷键
在Eclipse中,我经常使用Cmd+1来执行各种上下文感知操作。我使用这个快捷键主要是重构:重命名一个变量,提取代码到方法中等等。在Xcode中,你只能用单独的快捷键实现这些操作。
幸运的是,OS X可以帮助!点击 Cmd+Shift+/ 可以打开助菜单,输入“Refactor”,使用键盘的上下键来选择你想要的操作。它不如Eclipse中的 Cmd+1 方便,但是很相近。
点击 Cmd+Shift+/ 打开OS X的帮助或者搜索功能,并快速搜索你重构的功能。
是的,这个小技巧可用在所有OS X软件中。我也在Eclipse中常用,例如:点击 Cmd+Shift+/ ,然后输入”get“将会得到”Generate getters and setters“。此外,OS X允许你为菜单栏中的每个操作 自定义快捷键 。
Interface Builder 运行时属性
有时,你需要创建一个透明的视图。在 Interface Builder 中使用透明视图是很烦人的,因为你不能看到它们。有一种解决方案是通过给视图着色使其可见:
给一个透明视图添加颜色
然而,运行应用程序时,这个视图应该是透明的。你可以在代码使用IBOutlet来连接你的视图,在[UIColor clearColor]中设置颜色。但是,我们不要这样做。
Xcode实际上有一个内置的功能!如果你打开Identity Inspector ( Alt + Cmd + 3 ),你可以添加所谓的User Defined Runtime Attributes。因此,在我们的案例中,我们为backgroundColor添加一个条目,使颜色在运行时透明,但是在IB中设计时区分视图。
![](http://img1.tuicool.com/NreMVr.png)
点击( Alt + Cmd + 3 ),添加User Defined Runtime Attributes