- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章Xcode使用教程详细讲解(全)由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
Xcode使用教程详细讲解是本文要介绍的内容,Xcode是一个款强大的IDE开发环境,就像你在写Windows程序时需要VS2005一样 需要要Xcode为你写Mac程序提供环境。因此,如果你要成为Mac 程序的开发者,灵活运用Xcode工具是你必须做的第一步.
1)我们写程序时常常在源文件的头部添加copyright声明以及公司名称等等;而Xcode在创建文件时已经帮我们做了绝大部分工作,我们可能需要修改一下公司名称,因为xcode给不知道我们公司名称,它不可能预知一切,所以需要我们自己通过设置来告诉它。那么我们如何做到这一点呢?因为xcode中没有有关公司名称的占位符,所以我们必须通过terminal使用命令来设置.
在使用这个命令之前 我们来看看xcode为我们提供的默认文件头部注释:
1
2
3
4
5
6
7
|
//
// untitled.m
// FilesOrganize
//
// Created by yan li on 8/29/09.
// Copyright 2009 __MyCompanyName__. All rights reserved.
//
|
在terminal中执行如下命令(打开terminal的热键是command+shift+U):
。
注意上面的命令是在terminal命令行的同一行,而不是两行,这里是因为命令太长所导致。注意该命令执行时不会发出任何提示,即使你在命令中写错了参数名执行后也不会有任何提示,所以如果你执行该命令后发现你期待的效果没有出现,就请你检查一下你是否有拼写错误,执行该命令后我们重新启动xcode并重新创建文件,这个时候创建的文件头部注释,如下所见:
1
2
3
4
5
6
7
8
|
/*
* untitled.h
* Untitled
*
* Created by yan li on 8/29/09.
* Copyright 2009 LiYanzhong. All rights reserved.
*
*/
|
2)使用编辑器的技巧 。
a)如何关闭Xcode界面上的浏览器窗口?
点击 在Xcode工具栏上的最右边个Editor图标,可以打开或关闭Xcode中查找项目文件的浏览器。快捷键是command+shift+E.
如果你的窗口上每个我所说的图标,则你需要自己手动将该图标放置到工具栏上。如何放呢?
激活Xcode工具,进入 View->Customize Toolbar... 你会发现右很多没有在工具栏上出现的工具,你可以将想要随时可以用的工具拖到工具栏上就ok了.
b)如何对代码进行首行缩进?
第一种方法:选中需要缩进的代码,按住control键后单击光标,出现pop菜单,然后选择Re-indent selection.
第二种方法:选择需要调整的代码,同时按下command+[ (左移动代码)或 command+](右移动代码).
c)代码自动完成功能的强大应用 在Xcode中写代码,Xcode编辑器常常给出提示,如果给出的代码提示符合我们的要求,我们就可以按tab键选择所提示的代码。 如果提示代码不符合我们要求,我们可以按下esc键,将整个提示列表显示出来,找到我们需要的。在列表成员的最左边有个小方框,如果里面是f则对应的成员是函数;如果是m则是方法;如果是#则是#define命令;如果是E则是枚举;如果上C表示类。 如果我们不希望显示提示列表也能在列表成员间选择,我们可以使用快捷键control+. 在选项之间循环;也可以使用shift+control+. 在选项间反向循环。我们可以通过“代码自动完成功能”来查询一个类所提供了哪些API(接口方法)。方法是将类写在方法调用表达式中实现这一查询功能:
[NSDictionary+空格,然后按下esc键,将出现NSDictionary中提供的方法列表。注意:[NSDictonary后面必须要有空格,提示编译器类名称已经写完接下来要输入的是消息(即类中的方法名).
将光标从一个占位符跳到下一个占位符的快捷键是:control + / 。
d)在修改一个项目的代码时,请先拍下快照.
File->Make Snapshot 拍下项目的快照; File->Snapshots 从快照中恢复。对应的快捷键:control+command+S; 恢复没有快捷键,这样的好处就是--当代码修改烂了,可以恢复到最处状态。由此可见,这个功能只是在我们修改代码时提供帮助,不能真正的替代我们手动修改代码.
e)查找 替换功能的使用:
Edit->Find->Find in Projects... 出现如下对话框:
在Find栏输入要查找的字符;在Replace栏中输入要替换查找到的字符的字符;我们选择在工程中查找。如果我们不选择Ignore case 则替换只发生在main()函数中.
该方法修改代码有很到的弊端--如果我只想修改某个函数内的car字符,但是这样修改会将函数外的所有我不许修改的car字符也改了;二是它不能修改类名和文件名;所以需要下面的方法来弥补它的第一不足.
f)该方法可以解决上面修改代码的第一个缺陷,可以将代码的修改控制在一个函数之内,但是它仍然不能修改类和文件名字。使用这个方法前,必须用光标选择一个需要修改的局部变量字符或函数参数,注意必须是字符,如果你选择的是类名字符则不会出现菜单项“ Edit all in Scope". 。
Edit->Edit all in Scope,然后在你输入的时候,所有出现该字符的地方一起被输入的字符替换掉.
g)下面讲解一种可以修改类名和文件名的方法.
是用该方法可以改变类名字和文件名;先选择一个需要被修改的类名,如Engine;将光标插了到该字符中,选择Edit->Refactor...打开如下的对话框:
。
你如果需要将Car修也可以.
按下 preview按钮,界面如下所见,Xcode自动给处了我们分析报告,有什么文件将被修改,每个文件有几处会被修改等信息。从下面图可以看到,类名以及类的文件名都被修改了.
h)在Cocoa文本域常用的快捷键:
使用如下的快捷键 我们就可以在小范围呢移动光标二不让手不离开键盘了.
control+F : 在同一行上将光标向右移动 control+B : 在同一行上将光标向左移动 control+P : 将光标移动到前一行 control+N : 将光标移动到后一行 control+A : 将光标移动到本行的行首 control+N : 将光标移动到本行的行尾 control+T : 将光标两边的字符对调 control+D : 删除光标右边的字符 control+k : 删除光标所在行 光标后面的代码,便于你重写行尾代码 control + L :将光标插点置于窗口正中.
i)如何在Xcode中搜索一个文件?
在一个源文件如何打开一个由#import导入的头文件呢?
选中该头文件(可以不包含.h),然后通过File->Open Quickly...打开该被选中的文件。 在没有选中任何文本时,选择Open Quickly...则打开一个简单的查询窗口,查找工程中的文件。快捷键command+shift+D 如果你当前在看一个.m文件,这个时候你突然想要看看与该文件对应的.h文件,我们可以使用command + option+向上箭头 组合键,打开配套文件.
j)Xcode中书签的使用 。
如果你要将代码中的某个部分标注起来,以便以后和方便的找它这部分代码,则我们可以使用书签.
选中一段文本或在源文件中放入插入点,然后选择Edit->Add to Bookmarks(快捷键 command + D),出现提示时输入书签名.
k)代码编辑器的导航条 。
导航条 就是在本文编辑窗口的顶部.
导航条上有个功能菜单,我们可以通过#pragma mark命令向 功能菜单上添加项。#pragma指令将objective-c将常规代码之外的信息或说明传递给编译器和代码器。通常,#pragma是被忽略,如果你的编译器不认识它就会忽略它,不会报考警告.
除了通过#pragma mark向功能菜单添加项; 。
在注释中以如下关键字符打头的文本都会被添加到功能菜单:
。
。
L)通过研究助手(Research Assistant)获取Xcode 的文档和参考资料.
可以通过Help->Show Research Assistant 打开研究助手;一旦研究助手的浮动窗口被打开后,浮动窗口中的内容会随着你与Xcode 交互操作的内容改变而改变。 如下图所示:在Tire.m文件中,当光标在NSString类上时,研究助手浮动窗口所显示的信息:
切换到文件Tire.h中,研究助手的浮动窗口就显示有关NSObject的信息:
M)文档管理程序 。
我们可以通过访问苹果公司的官方API文档;方法是按住Option键并双击某个要查看的符号。如我们按住Option键并双击NSString符号将在文档浏览器窗口中打开有关NSString的资料信息,如下图:
按住control键并单击文档区域来打开pop菜单,选择任何菜单项,在另一个窗口中打开该文档。 M)如何调试程序? (a)有两种方法:一是暴力调试,二是使用调试器调试.
什么是暴力调试?
暴力调试就是在你的程序中添加NSLog()语言,将程序的控制流程和一些重要数据输出到终端上。 调试器调试:
调试器 就是介于你编写的应用程序和操作系统之间的一种程序,可以对你的程序进行控制,如停止,执行,单步跟踪等.
Xcode使用的调试器是GDB.
Xcode除了有GDB外,还有一个微型调试器,它是一个浮动窗口,通过它我们能接跳过GDB调试器做一些简单的调试工作。 Xcode有一个提供大量概述信息的调试窗口。 Xcode提供一个调试控制台,通过它可以直接向调试器发调试命令.
(b)如何用调试器进行调试?
(1)编译程序时必须使用编译器的Debug配置,这样编译出的程序包含调试信息(调试器要用的信息) (2)调试时 需要让程序在调试器模式下运行.
在Xcode中有两种运行程序的方法:Run->run (快捷键:command + R), 不用调试器运行程序; 。
Run->Go(Debug)或者Run->Debug(快捷键:command+Y),使用调试器运行程序.
(3)对 断点 的操作 如何设置断点?
在 边列(gutter)上单击 就可以设置一个蓝色的断点;在次单击就disable该断点;如果要删除该断点就将该断点拖出边列.
调试快捷键:
1
2
3
4
|
continue
: option + command + P
step Into : shift + command + I
step Over : shift + command + O
step Out : shift + command + T
|
打开Xcode的调试窗口(点击调试控制栏上一个有喷雾器的方框)如下图:
通过该窗口,可以执行各种调试命令并观察变量值的变化。 如下是GDB的命令调试窗口,在其中可以输入gdb的调试命令对程序进行调试:
通过调试控制栏上一个控件(黑色方框控件右边的那个),可以察看函数调用栈;如上图所示。 [Note]边列(断点所在的列) 傍边较窄一列就是 焦点列.
小结:Xcode使用教程详细讲解的内容介绍完了,希望本文对你有所帮助,我们大概学习了Xcode这一强大的工具,要想深入研究它,我们还有很多的路要走,不过我们已经有了一个好的开始.
最后此篇关于Xcode使用教程详细讲解(全)的文章就讲到这里了,如果你想了解更多关于Xcode使用教程详细讲解(全)的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
目录 进程 其他相关概念 创建线程的两种方式 为什么使用start()方法而不直接使用run()方法 start()方法底层
CURL状态码列表 状态码 状态原因 解释 0 正常访问
ODBC连接类函数 odbc_connect函数:打开一个ODBC连接 odbc_close函数:关闭一个已经打开的ODBC连接 odbc_close_all函数:关闭所有已经打开的ODBC连
作为标题,如何计算从纪元1900到现在使用boost的持续时间? 编辑:很抱歉以前的问题太短。我将再次描述我的问题。 我有关于将生日另存为整数的问题。我创建了四个函数,用法如下: ptime转换为整数
前言 在Java中,有一个常被忽略 但 非常重要的关键字Synchronized今天,我将详细讲解 Java关键字Synchronized的所有知识,希望你们会喜欢 目录 1. 定义 J
详细 JVM 垃圾收集日志的时间戳是收集的开始还是结束? 2016-08-09T21:04:19.756-0400: 224890.317: [GC Desired survivor size 167
我在“Master-Detail”概念上苦苦挣扎,除了一点点(但很重要)的细微差别外,几乎所有东西都按预期工作。我应该在 Storyboard上更改什么以在详细信息 View (屏幕截图底部的右上角)
我希望能够显示表格的详细 View ,但不推送新屏幕,而只显示表格所在的详细 View 。 设置它的最佳方式是什么......如果真的可行的话? ---------------------------
我在我的博客中为我的帖子使用了详细 View ,每篇帖子都有评论,所以我想对它们进行分页,但我不知道该怎么做,因为我请求了帖子模型。我知道如何在功能 View 中执行此操作,但不知道如何在详细 Vie
在下面的代码中,与 pm 对齐,该行是否会 move 整个内存并将其分配给 pm,或者它只会 move p 指向的内存而不是整个数组? int main() { int*
1·下载 https://dev.mysql.com/downloads/mysql/ 2·安装服务 1)管理员运行cmd 2)D: 3)cd D:\mysql
今天以前一直用的SQL Server 2005做开发,偶尔也用MySQL,现入手公司项目,用到SQL Server 2008,于是乎必须安装它,免得出现其他很纠结的小问题,现将自己安装图解分享如下:
1. crontab命令选项 复制代码 代码如下: #crontab -u <-l, -r, -e> -u指定一个用
我们有一个 WPF 应用程序,它有一个主窗口/详细信息窗口,两者都是 WPF 数据网格。当您在上部数据网格中选择一行时,详细信息将显示在下部数据网格中。我想知道从 UI 的角度来看是否有任何关于如何处
在可视化 Perforce 客户端 (p4v) 中有一个选项: 显示文件操作的 p4 命令输出 启用后,在日志 Pane 中,我可以看到这样的详细日志记录: p4 sync /Users/az/ftp
在其他服务器上设置测试环境后,在几个API调用中出现错误。 99%肯定这是MySQL的事情,但是返回的错误根本没有帮助: global name 'sys' is not defined" 我已经导入
我正在维护一个通用的 iOS 应用程序,其开发已开始于 iOS 6。我正在为 iOS 7 更新 UI。现在我遇到了应用程序的 iPad 部分的奇怪问题。这部分遵循使用 UISplitViewContr
我希望我能正确描述这种情况。当它发生时很容易在屏幕上看到,但很难用语言解释,但我会尽力而为。 我有一个带有固定主视图 (UITableView) 和两个详细 View 之一的 UISplitViewC
我尝试在 eclipse 和 intelliJ 参数中使用垃圾收集记录器来配置简单的测试程序。尝试了不同类型的配置,但尚未创建日志文件。 -XX:+PrintGCDetails -XX:+PrintG
正如您所知,.cap 文件中的 java 小程序的输出文件格式必须通过智能卡读卡器/写卡器(如 ACR122 或任何其他读卡器)部署到 java 卡,而且我相信 java 卡与 java 卡之间的部署
我是一名优秀的程序员,十分优秀!