1.快捷键
1)command+向上箭头可以切换到上一级目录
2)command+shift+o快速查找符号
3)command+r运行程序,command+.停止程序
4)调试:F6单步,F7跳入,F8继续
5)command+o打开文件,command+w关闭窗口
6)command+Ctrl左右箭头前一个后一个编辑点
2.给xcode工程改名:
右上角identity and type那里改名,会弹出一个对话框,点击确定
Product->scheme->Edit scheme 和manage scheme里面都要改成新的名字
3.指定项目包含目录,Build Settings->Search Paths
4.添加静态库,选中项目,点击targets->Build phases->link binary with library,将work space的静态库加进来(目前加的是ios版本的)
5.如果报DerivedData下面无法创建和删除文件,那么进入到/Users /username/Library/Developer/Xcode/DerivedData/,手动删除文件
6.如果报错:xcode the application could not be verified,这是因为证书不匹配。将设备上已安装的的app手动删除再次安装。
7.ios开发UIKit就是构建用户界面所需要的全部类。
8.UIApplicationMain函数作用(会扫描应用程序的Info.plist信息属性列表)
初始化UIApplication对象,如果没有给定appliaction,系统会默认UIApplication。
从给定的应用程序委托类,初始化一个应用程序委托类
启动主事件循环,并开始接收事件
9.LaunchScreen.storyboard串联图。需要在Info.plsit里面配置一个启动的串联图,也可以配置一个main storyboard表示主界面。注意设置的主界面必须要设置初始view controller。
10.Ios开发使用mvc模式,v就是storyboard,c就是storyboard对应的custom class。
11.视图控制器,viewController生命周期。创建的顺序:
alloc
init
loadview
viewDIdLoad
viewWillAppear
viewDidAppear
12.视图移除的执行顺序
viewWillDisappear
viewDidDisappear
dealloc
13.生成ipa
选中工程,点击Product->Edit Scheme
build configuration 选择Release
点击Product->Archive
等待一会儿后选择Export
选择Save for ios app store deployment
14.ios应用程序都有一个UIApplication对象:
1)是ios程序的起点,负责初始化和显示UIWindow
2)负责加载应用程序的第一个UIView到UIWindow
3)帮助管理应用程序的生命周期
4)接收事件,再转给他的委托UIApplicationDelegate来处理,事件包括生命周期事件如启动和关闭,系统事件和来电事件
15.ios的程序生命周期事件是通过ApplicationDelegate来处理的,而android是通过Activity的生命周期来处理的
16.URL scheme,ios的应用程序注册自己的URL scheme,方便应用程序之间相互调用
17.设置发布版本:选中工程,然后选择targets,在General里面Deployment Target,目前选的是6.0
18.Xib和storyboard,都是用来描述界面的,都用Interface builder来编辑。Xib是轻量级的,用来描述局部的UI界面,storyboard是重量级的,用来描述整个界面,并且可以展示界面之间的跳转关系
19.IBOutlet,IBAction:IB工具的类,将UI元素与controller里面的方法关连起来(通过拖动的方式)。IBOutlet关联label,IBAction关联button。
20.Button的点击事件可以通过右键点击按钮查看。如果要替换点击处理函数,要删除废弃的点击处理函数。
21.UIWindow。通常一个app只有一个uiwindow,用来加载视图。
22. viewController跳转的几个方法:
1) seugue跳转
- 跳转:[self performSegueWithIdentifier:@"next" sender:self];
- 关闭:[self dismissViewControllerAnimated:YES completion:nil];
2) presentViewController
- 跳转:UIStoryboard* storyboard = [UIStoryboard storyboardWithName:@"SecondView" bundle:[NSBundle mainBundle]];
ViewController *viewController=[storyboard instantiateViewControllerWithIdentifier:@"SecondView"];
[self presentViewController:viewController animated:YES completion:nil]; - 关闭同segue。
3) UINavigationController跳转
4) UITabBarController
23.如果报错:arc forbids explicit message send of dealloc。这是由于在新建工程的时候启用了ARC功能。在xcode中,打开“Build Setting”,找到“Objective-C Automatic Reference Counting”项,将它的值设置成“NO”,即可。
24.如果报错:use of import when modules are disabled。在build settings->apple LLVM
7.0-Language-Modules里面将Enable Modules" to 改为“YES”就可以了。
25.开启arc(自动引用计数)。在build settings-> Apple LLVM 7.0 Language -Object C里面 设置ARC的全局属性。也可以build phases的complile Source里面设置单个.mm文件的arc功能。-fobjc-arc 开启arc,-fno-objc-arc关闭arc。这样使得arc和非arc共存。
来源:oschina
链接:https://my.oschina.net/u/2622350/blog/612063