随笔分类 -  ios应用开发视频教程笔记

该笔记为看《2011年冬季最新斯坦福大学公开课:iOS程序开发教程》所做,观看视频网站:http://www.youku.com/playlist_show/id_16853809.html
iOS应用开发视频教程笔记(十七)iCloud
摘要:这节课主要讲iCloud以及demo。 iCloud 什么是iCloud呢?基本上,对用户来说iCloud只是个网络共享目录的URL,它的意图主要是让用户把他们的文档、数据、备份、app文件放到网上去,然后在他们任意的其他设备上,都可以访问该数据。这是它最主要的用途。 为了app能访问云,它需要获得正确的权限,在xcode中只要点击一个按钮就能获得权限。 只要在project target里单击黄色箭头指向的按钮,它会自动填写授权信息。 阅读全文
posted @ 2013-03-27 23:07 写下一生的程序 阅读(6834) 评论(2) 推荐(2)
iOS应用开发视频教程笔记(十六)Action Sheets, Image Picker, Core Motion
摘要:这节课主要讲NSTimer的内容以及它的替代方案“perform after delay”、更复杂的动画、Alerts、Action Sheets、UIImagePickerController(用来从camera里取东西)和Core Motion。如果不是一个重复timer,不需要invalidate,它自己会结束。可以看到repeats是YES或NO,代表是否重复。如果有一个strong指针指向它,那么需要将其设置为nil;如果是一个weak指针,它自己就可能把自己nil掉。所以这是除了outlet之外,另一种可能会使用一个弱指针的情况。调用了scheduledTimerWithTimeInterval,在它运行的时候会有强指针指向它,一旦通过invalidate停止它,它就不会再有强指针。 阅读全文
posted @ 2013-03-26 16:37 写下一生的程序 阅读(3584) 评论(0) 推荐(1)
iOS应用开发视频教程笔记(十五)ModalViewController_Test_Animation_Timer
摘要:这节课主要讲四种特性:Modal View Controllers、UITextField and UITextView、UIView Animation和NSTimer。 Modal View Controllers 它是一个模式,当用户要继续做某些事情的时候必须先做别的事情。如何使Modal View Controllers出现在屏幕上?用segue,从一个button或bar button或什么的control-drag出来,来触发Modal View Controllers。点击之后,在xcode中control-drag以创建一个segue,然后将其设置为modal,当你inspect这个segue,在这里可以设置类似它的出现方式之类的东西。 阅读全文
posted @ 2013-03-23 23:57 写下一生的程序 阅读(2641) 评论(0) 推荐(1)
iOS应用开发视频教程笔记(十四)Core Data Demo
摘要:这节课的主要内容是Core Data的线程安全、Core DataTable View,以及大Demo。 Core Data Thread Safety NSManagedObjectContext不是线程安全的,只能在创建NSManagedObjectContext的那个线程里访问它。一个数据库有多个UIManagedDocument和context,它们可以在不同的线程里创建,只要能管理好它们之间的关系就没问题。 线程安全的意思是,程序可能会崩溃,如果多路访问同一个NSManagedObjectContext,或在非创建实例的线程里访问实例,app就会崩溃。 阅读全文
posted @ 2013-03-20 23:59 写下一生的程序 阅读(4784) 评论(3) 推荐(2)
iOS应用开发视频教程笔记(十三)Core Data
摘要:这节课的主要内容是Core Data、NSNotificationCenter和Objective-C Categories。 Core Data 它是一个完全面向对象的API,负责在数据库中存储数据,底层也是由类似于SQL的技术来实现的。 在高级语言这一层,如何使用Core Data?在xcode中,有个工具可以建立对象之间的映射,这些对象会存储在你的数据库里,它们是NSObject的子类,实际上是NSManagedObject的子类,然后Core Data负责管理这些对象之间的关系。 阅读全文
posted @ 2013-03-14 21:13 写下一生的程序 阅读(19016) 评论(1) 推荐(3)
iOS应用开发视频教程笔记(十二)Persistence
摘要:这节课主要讲几个部分,一个是final project的准则,然后是持久化(Persistence)问题。 持久化(Persistence)意思就是当你退出app的时候它还会存在。NSUserDefaults就是一个非常简单的持久化方案,不过这有限制,它只能是很小的东西,通常是些用户选项。 如何把那些大数据的东西持久化? 第一个方法,把东西持久化的第一个简单的方式有点像用NSUserDefaults里的property list来实现的进化版,property list是我们自定义的一个概念,是NSArray、NSDictionary、NSNumber、NSString、 NSDate和NSData的组合。所有以上这些都有API可以用来保存,NSUserDefaults也有些API可以。 阅读全文
posted @ 2013-03-11 11:00 写下一生的程序 阅读(1973) 评论(0) 推荐(1)
iOS应用开发视频教程笔记(十一)Core Location and Map Kit
摘要:今天要讲的是设备的位置,包括如何找到设备的位置和如何在地图上显示位置。 Core Location不是一个UI的东西,没有用户界面,它只是关于找到该设备的位置。Core Location的基本对象是一个CLLocation,CL是Core Location库的前缀,location是基本对象。关于这个位置读数的精度,会谈到时间戳(timestamp),就是这个位置何时被记录。speed,移动的速度有多快,通过GPS坐标的瞬时读数判断。course,类似移动的航行。最重要的是coordinate,它告诉你这个CLLocation在哪里。 阅读全文
posted @ 2013-03-09 23:03 写下一生的程序 阅读(3955) 评论(0) 推荐(1)
iOS应用开发视频教程笔记(十)Blocks and Multithreading
摘要:这节课的主要内容包括: 1.UI元素,比如UITabBarController以及UINavigationItem(就是自定义navigation controller里面的view controller的样子的property); 2.然后就是Blocks,Blocks是一种语言特性,这非常重要,我们所有在ios的多线程的东西都要用到Blocks,因为主线程也就是UI线程,时常要跟用户交流,这是永远都不能被阻塞的。 UITabBarController UITabBarController基本上就是你在iphone或其他ios应用里看到的那些在底部的黑色的button,比如时钟app,可以看到从左边点到右边,就会出现不同的view controller。 阅读全文
posted @ 2013-03-03 23:56 写下一生的程序 阅读(1786) 评论(0) 推荐(2)
iOS应用开发视频教程笔记(九)Table Views
摘要:今天讲的是TableViews,它可用于呈现动态数据列表,也可用于静态数据。 UITableView tableView是个一维表,这是一个UIScrollView的子类,所以它是一个滚动列表。它可以高度定制化,它从它的两个不同的delegation中获取所有的定制化信息,有data source和delegate这两个不同的properties,data source负责提供表中的数据,delegate负责数据显示。如果想显示多维数据,就是有行和列,可以使用sections或者可以把它放进一个navigation controller。 阅读全文
posted @ 2013-02-27 23:42 写下一生的程序 阅读(8594) 评论(0) 推荐(0)
iOS应用开发视频教程笔记(八)Controller Lifecycle & ImageScrollWebViews
摘要:这节课主要讲关于View Controller的生命周期、ImageView、ScrollView、WebView及它们的demo演示。 View Controller Lifecycle View Controller的生命周期指它们被创建、存活然后消亡。 View Controller的生命周期的第一部分是创建,这部分基本上由storyboard里面的segue完成,一个segue总是创建一个新的View Controller。在storyboard里有个方法叫做instantiateViewControllerWithIdentifer,你需要一个View在storyboard里的View Controller,你给这个方法一个identifier,然后它就会帮你实例化一个View Controller,然后你的职责就是把这个View放在屏幕上,可以push到navigation controller,也可以是popover。 阅读全文
posted @ 2013-02-13 22:28 写下一生的程序 阅读(2445) 评论(0) 推荐(0)
iOS应用开发视频教程笔记(七)iPad Apps
摘要:这节课的主要内容包括iPad、Split Views、Popovers及做一个universal的应用并在两种设备上运行。 UIToolbar 通常在屏幕的顶部或底部,长得像钢筋一样。一个工具栏,是一个UIBarButtonItems的集合。UIBarButtonItems不是按钮,有点像是简化过的按钮。UINavigationController有一个在底部的工具栏,可以通过在xcode里inspect Navigation Controller中的Shows Toolbar小开关打开,但工具栏上的按钮和Navigation Controller本身没有任何关系,它只和当时显示的ViewController有关。 阅读全文
posted @ 2013-02-07 23:57 写下一生的程序 阅读(6204) 评论(0) 推荐(1)
iOS应用开发视频教程笔记(六)Multiple MVCs and Segues
摘要:今天的主要内容是: 继续上周的Demo,让FaceView委托其数据,然后增加一个手势识别,但这一次要在controller里处理。 如何构建一个应用程序,如何修改现有的应用程序有多个MVC,然后会做一个关于此的Demo。 视图控制器的生命周期,也就是一个控制器的存在和发生,有一个出现在屏幕上和离开屏幕的周期。 阅读全文
posted @ 2013-01-21 00:08 写下一生的程序 阅读(1725) 评论(0) 推荐(0)
iOS应用开发视频教程笔记(五)Protocols and Gestures
摘要:自动旋转 旋转设备之后,view的bounds跟着改变了。返回controller是否允许它的view自动根据设备的旋转而旋转。这个自动旋转接口包括竖直、上下颠倒、左横向和右横向这4种情况。这儿有个宏UIInterfaceOrientationIsPortrait,返回它来检查是否是你想要的旋转方向。旋转的时候view的bounds会改变,它的子view的frame会变,子view的子view也会变。改变的衡量被称为struts和springs。 阅读全文
posted @ 2012-12-18 10:53 写下一生的程序 阅读(1235) 评论(0) 推荐(0)
iOS应用开发视频教程笔记(四)Views
摘要:这节课分为两部分,一部分是Calculator的Demo,一部分是Views。 Demo的演示包括下面内容: 1、可编程性,添加一些API,作用是返回计算程序!API要保证程序向上兼容。计算程序是在Brain里操作数和运算符的组合。一旦获取到了计算程序,回到calculator类通过类方法来执行这个程序,也就是去计算运算结果,同时还会有一个类方法返回一个可读的计算程序的描述。计算程序,就是操作数和操作符的组合,把这个组合里的操作数和操作符弹栈并做相应的计算。API向上兼容就是说他没有改变Controller,程序一样能正常运行。 阅读全文
posted @ 2012-12-16 12:29 写下一生的程序 阅读(1179) 评论(1) 推荐(0)
iOS应用开发视频教程笔记(三)Objective-C
摘要:回顾上节课内容: 主要学了两样东西,xcode和很多obj-c。 1、如何创建新项目?开始界面的Create键还有文件菜单的创建新项目。 2、如何显示项目里的不同文件?比如左边的navigator,上部的选项条。 3、xcode的UI布局:使用对象库,inspector,debugger控制台等。 4、从右下角拖button、label到view上,还有从中拖出条线来连接到controller来实现controller对view的通信,还有利用action让view向controller发话。 5、如何获取帮助?按住option键再点击进入完整文档。 阅读全文
posted @ 2012-12-13 23:20 写下一生的程序 阅读(1765) 评论(4) 推荐(0)
iOS应用开发视频教程笔记(一)MVC and Introduction to Objective-C
摘要:(1)ios概述 ios分为4层,这4层都和硬件密切相关,最下层最接近硬件,最上层最接近程序环境或引擎。 Core OS层 该层为最下层主要是mach4.x BSD UNIX内核,也就是Mac OS 10操作系统,是一个在硬件上能够执行多任务的UNIX内核。在这一层上,它提供了很多支持例如网络、socket、安全机制、文件系统,这里的API大多数都是C的API不是面向对象的,因为这是UNIX代码,我们一般不在这一层上写代码。 阅读全文
posted @ 2012-12-11 18:00 写下一生的程序 阅读(2326) 评论(5) 推荐(2)
iOS应用开发视频教程笔记(二)My First iOS App
摘要:这课主要是以一个计算器一个用为例子,教你怎么使用XCode,如何使用MVC设计模式创建应用。 (1)新建一个single view application模版的应用 打开xcode并点击“创建一个新xcode项目”,进入项目创建界面,这个界面让我们为应用选择一个模板。接着选择“single view application”模板,单击next按钮,进入项目详细信息界面。 阅读全文
posted @ 2012-12-11 18:00 写下一生的程序 阅读(1082) 评论(1) 推荐(0)