初次使用Xcode时感觉操作不便。在这里我总结了一些小技巧可帮助开发者更方便有效地进行Xcode开发。
自定义快捷键
在Eclipse中,我习惯于使用键盘不断的移动代码。三个简单的例子:
Alt + up/down: 向上/向下移动选定的代码
Alt + Cmd + up/down: 向上/向下复制选定的代码
Cmd + d: 删除当前行或选择区域
当使用Xcode时,我首先注意到没有这三个快捷键,这会大大降低我的开发效率。幸运的是,还有其他方法。让我们看一下这个文件:
- /Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Resources/IDETextKeyBindingSet.plist
这个文件包含一些键绑定,正如你所见,他们映射到一个或多个消息。因此,让我们在文件的末尾添加键绑定的自定义部分:
- ...
- My Custom Shortcuts
- Delete Current line
- moveToBeginningOfLine:, deleteToEndOfLine:,
- deleteToEndOfParagraph:
- Move Line Up
- moveToBeginningOfLine:, selectLine:, cut:, moveUp:,
- paste:, moveUp:
- Move Line Down
- moveToBeginningOfLine:, selectLine:, cut:,
- moveDown:, paste:, moveUp:
- Copy Line Up
- moveToBeginningOfLine:, selectLine:, copy:,
- moveToBeginningOfLine:, paste:, moveUp:
- Copy Line Down
- moveToBeginningOfLine:, selectLine:, copy:,
- moveDown:, paste:, moveUp:
好了,在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中设计时区分视图。
点击(Alt + Cmd + 3),添加User Defined Runtime Attributes