E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Hegarty
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记27 AutoLayout自动布局2
上一话中我们实现了切换密码输入的功能,这一话我们来完成登录的功能。我们创建一个Swift的类用来存储用户信息:importFoundationstructUser{letname:Stringletcompany:Stringletlogin:Stringletpassword:Stringstaticfunclogin(login:String,password:String)->User?{i
秋雨暗千家
·
2020-08-09 20:37
斯坦福大学IOS8公开课
Swift大讲堂
ios MVC架构(设计模式)和MVVM
Model-View-Controller)参考博客:MVVM(Model-View-ViewModel)swiftUI(MVVM)参考博客MVC(Model-View-Controller)视频链接:斯坦福
Hegarty
星星月亮0
·
2020-08-09 07:11
面试
ios
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记1 IOS8概述
首先感谢网易公开课和SwiftV课堂的朋友们辛苦翻译,这个系列是我学习斯坦福IOS8公开课的个人心得体会和笔记,希望能给大家带来启发。首先我们要知道IOS系统中的结构情况,从贴近硬件的底层到贴近用户的顶层,分为四个层次:1.CoreOS层在最下层,很多人可能不知道IOS是一个基于UNIX的操作系统,它大量借鉴了MacosX的内核部分,MacOSX我们肯定不会陌生,命令行的使用很好的证明了它是一个基
秋雨暗千家
·
2020-07-09 14:25
斯坦福大学IOS8公开课
Swift大讲堂
使用iOS 8的新特性实现Shutterbug
具体地参见网易视频表格视图和iPad视频中
Hegarty
教授使用Xcode6进行代码演示,为了支持iPhone和iPad同时建立了两套Storyboard,即UniversalApp。在看这个视
jack2gs
·
2020-06-27 20:59
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记47 文件系统Demo
本话将展示如何使用文件系统保存相机中保存的封面照片,使用一个提前准备好的封面设置Demo,在设置完imageView的image时候把新的图片保存到文件系统中。funcimagePickerController(picker:UIImagePickerController!,didFinishPickingImageimage:UIImage!,editingInfo:[NSObject:AnyO
cg1991130
·
2015-10-11 22:00
ios
swift
文件系统
斯坦福公开课
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记46 Persistence持久化
本话将介绍IOS中的四种数据持久化方式:ArchivingSQLiteFileSystemCoreData前面我们将结果NSUsrDefaults的用法,它是针对小数据量的持久化技术,本话的四种方式是针对大数据量的操作。1.ArchivingArchiving是一种把对象存储到硬盘上的存储方式,被存储的对象不需要所有属性的目录。只要一个对象实现了Archiving的两个方法,那么使用Archivi
cg1991130
·
2015-10-11 21:00
ios
swift
数据持久化
斯坦福公开课
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记45 Embed Segues
Embedsegues是嵌入过渡,把一个MVC嵌入另一个MVC中,使用起来很简单。只需要把需要嵌入的MVC放到另一个MVC上面即可,处理该segue的方法与其他segue没有区别,但是有一点是必须注意的,在prepareForSegue的时候,嵌入的MVC的outlet是没有初始化的,所以不要访问outlet的属性。用法如下,拖入一个ContainerView,样式如下:然后拖拽到场景中,摆放到相
cg1991130
·
2015-08-29 16:00
ios
swift
EMBED
斯坦福大学
segues
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记44 Popover Segue
在上一话中我们看了一个Demo,使用modal的方式,但其实如果要考虑到适配Iphone和Ipad设备的话,默认的modal会充满屏幕,而popover可以只占据屏幕上的一小块,之前我们讲过在Iphone中使用popover看起来和modal是一样的。实则不然,popover有很多设置在Iphone中也是生效的。修改上一话中的Demo。首先为了突出效果我们把第一个场景的背景色加深,橙色好了,然后修
cg1991130
·
2015-08-28 22:00
ios
swift
popover
斯坦福公开课
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记43 保护NSNotification的内存安全
在之前的Demo中讲解过NSNotification的用法,NSNotification是使用NSOperationQueue实现的,所以使用NSNotification不可避免地会陷入内存问题,比如下面这个情况:在storyboard中准备两个场景。在第一个场景中显示一个label,旁边有一个按钮我们可以点击这个按钮modalsegue到另外一个场景中,在其中放置一个textField输入新的n
cg1991130
·
2015-08-28 12:00
ios
内存
swift
cookie
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记42 Modal Segue(模态过渡)
modalsegue会占据整个屏幕,所以使用的使用一定要小心,提前做好返回的处理,使用modalsegue的好处是在执行某项操作前必须,比如我们熟悉的alert和actionsheet。比如手机中的联系人页面,点击右上角的加号会出现一个添加联系人的页面,整个页面的划出方式就是modalsegue。通常modalsegue中的取消按钮会取消当前的操作,而确定按钮会提交当前的操作。注意modalseg
cg1991130
·
2015-08-27 15:00
ios
swift
modal
segue
斯坦福公开课
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记41 Animation动画
IOS中的动画有以下几种:第一种是为UIView的元素添加动画。第二种是控制器的动画,比如之前介绍的导航控制器的用法。第三种是CoreAnimation,这是一个很强大的框架,但是超出了这门课程的范围。第四种是DynamicAnimation,这种动画基于设备的物理特性,比如晃动手机、调转方向等等。本话来讲解第一种情况:可以诸如frame、transform、和alpha这样的属性来实现动画效果。
cg1991130
·
2015-07-26 22:00
ios
swift
animation
斯坦福
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记40 NSTimer
NSTimer的主要作用是延时调用某个方法。NSTimer主要使用在runloop中,而runloop是主队列中的东西,我们不介绍runloop,但是读者需要知道NSTimer是用在主队列中的。比如你在玩某个游戏,每一秒中要刷新游戏分数,就可以使用NSTimer。使用如下方法来创建一个Timer,方法定义:下面是使用的例子:要关闭这个timer的时候只需要调用invalidate方法即可。你可以指
cg1991130
·
2015-07-26 21:00
ios
swift
NSTimer
斯坦福
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记39 Alert&ActionSheet
Alert和ActionSheet是IOS中弹出消息的两个工具。首先它们都是Modal的方式展示的。Alert用来向用户发起询问,可以有一个(比如取消)或两个选项(比如确定和取消),也可以附带一个文本框(比如要求用户输入密码)ActionSheet从屏幕底部滑出,提供一些分支的选项,选项的数量可以大于两个。对比如图:ActionSheet和Alert都可以使用UIAlertController来创
cg1991130
·
2015-07-26 20:00
ios
alert
swift
斯坦福
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记38 Unwind Segue反向过渡
之前我们接触过了segue,这是IOS中最基本的传递方式,今天来讲解一下如何进行反向的segue。反向过渡的使用前提是发出过渡的MVC必须是由目标MVC直接或者间接正向过渡来的。反向过渡是唯一不会创造新的MVC的过渡方式,它有下面两个适用场景:1很适合在navigationController的栈中使用进行跳转。2关闭一个使用modalSegue生成的MVC。和其他的segue不同,不需要拖拽连线
cg1991130
·
2015-07-24 00:00
ios
swift
segue
unwind
反向过渡
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记37 TableView Delegate
上一话介绍了tableView的datasource,本话来介绍另一个重要的部分delegate。当我们点击一个cell的时候,如何跳转到另外一个mvc中呢?像增加其他segue一样,点击cell按住control键,右键连线到另一个mvc上,然后松手,选择需要的segue类型。如果你的cell上还有其他按钮,比如detaildisclosure,你也可以选择它的segue:然后设置你的segue
cg1991130
·
2015-07-19 22:00
ios
tableview
swift
delegate
斯坦福公开课
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记36 TableViewDatasource
TableView是iOS开发中非常重要的内容。TableView的作用是在一张表格中展示数据,它是UISCrollView的子类,你会看到当table中的cell条目多的时候你可以通过上下滑动屏幕来获取更多的内容。table可以是静态的也可以是动态的(比如一个table中item的数量)。通过datasource和delegate可以创造出非常多样化的table样式。在展示很大数量级的数据时ta
cg1991130
·
2015-07-19 13:00
ios
tableview
swift
斯坦福
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记35 UITextField文本框
本话来介绍UIKit框架中的组件UITextField。 UItextField(文本框)和Label看起来看像,但是文本框是可以编辑的。在UI中使用文本框要注意,因为在模拟器上面输入文字是可以使用电脑键盘的,而在真机上,用户只能使用虚拟键盘,所以要注意。另外文本框中的文字大小、颜色等等也是可以设置的,就和在Label中一样。 每次我们点击文本框开始输入内容的时候,文本框会成为页面上的firstr
cg1991130
·
2015-06-24 09:00
ios8
swift
UITextField
keyboard
NSNotification
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记13 Drawing绘制、UIColor颜色、Fonts字体
上一话介绍了视图绘制的一些基本原理,这一话继续展开。UIBezierPath可以绘制许多有趣的图形。使用不同的构造器,比如roundedRect就是四个角被磨圆了的矩形,或者干脆是椭圆和圆。你甚至可以剪切任意的path,剪切使用addClip方法,在剪切了之后你可以针对剪切的这部分进行操作,例如你正在绘制一个卡片,这个卡片有小小的圆角效果,你可以把卡片绘制在一个矩形里面,然后把它剪切到一个小一点的
cg1991130
·
2015-04-15 10:00
ios8
swift
Drawing绘制
Fonts字体
Alpha透明度
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记12 Custom Views视图绘制1
这一话来讲解一下视图的绘制,首先介绍一下相关的结构体视图中的所有coordinate(坐标)的类型都是CGFloat,CGFloat在Swift中是结构体,在处理视图绘制和手势识别的时候我们使用的都是CGFloat,不要用我们常规的Double和Float。你可以通过使用CGFloat的初始化方法把Double或者Float类型的数据转换成CGFloat。另外一个结构体是CGPoint,它由x和y
cg1991130
·
2015-04-14 18:00
ios8
view
swift
custom
paul
UIBezeierPath
Hegarty
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记11 View视图
一个view(视图)是IOS中UIView的子类,标示了屏幕上的一个长方形区域,定义了一个坐标系空间来绘图,并且处理触摸的操作。view是有层次的,一个view只能有一个superview,但是可以有多个subview。你可以获取一个view,当然返回值是可选的,或者获取一个view的所有subview,返回值是一个数组,虽然这个数组中的元素其实是AnyObject,因为一些历史遗留原因,不过没关
cg1991130
·
2015-04-14 16:00
视图
ios8
view
swift
paul
Hegarty
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记10 Property List
这一话来讲一个AnyObject的应用:PropertyList。propertylist不是任何一种类型,它属于一种工具类的东西。它表面上是AnyObject,但是在后台,它是NSString、NSArray、NSDictionary、NSNumer、NSData和NSDate这六种类型中的一种,或者它们桥接到Swift中的版本。我们为什么要用propertylist呢,它看起来很笨重,我们需
cg1991130
·
2015-04-14 11:00
ios8
swift
NSUserDefaults
paul
Hegarty
PropertyList
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记8 String、Type Conversion、Assertions
处理字符串的难点是字符串的索引和创建字符串等其他的问题以及如何创建一个字符串的子串。字符串是由Unicode组成的,你不要把Unicode组成的字符串的子串看做Unicode字符,而是把它们拆分成Unicode字素,所以我们不能像数组中那样索引,因为会遇到有的字素是由多个字符组成,这样会把一个完整语义的字素拆成了两个字符从而改变了原意。所以字符串是由另外的一个类型来索引的,这种类型就是String
cg1991130
·
2015-04-14 09:00
String
ios8
swift
paul
Hegarty
assertions
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记7 AnyObject、Functions
新的一话中我们将讲讲Foundation的一些相关知识,首先来看AnyObject。为了方便理解,你可以任务AnyObject是某种类型,虽然它并不是。AnyObject的存在是为了兼容现有的OC和IOS的代码,你并不会经常使用它来构建你自己的数据结构。Swift是强类型语言,并有类型推断的特性。AnyObject是一个指向对象的指针,也就是说它是一个类的实例,但它是一个指向未知类的指针。我们所需
cg1991130
·
2015-04-13 17:00
ios8
swift
functions
paul
Hegarty
AnyObject
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记6 init
这一话首先来讲写关于init的东西。首先初始化并不会经常被用到,这是因为类和结构体中的大部分属性都会通过赋值被初始化,或者有些属性是Optional的,这样即使是nil也没关系,可以在之后再给它们赋值,就好比StoryBoard中的outlet,又或者可以使用闭包来初始化,或者使用lazy来避开init,所以有很多方法来避免init,除非你确实需要一个init的时候,那么该怎么做呢?在一些情况下会
cg1991130
·
2015-04-13 15:00
ios8
swift
初始化
init
paul
Hegarty
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记5 Data Structures、Methods、Properties
在前面的几章中我们经常接触到Optional(可选型),今天来细致讲解一下可选型。在上一话中我们接触到了enum(枚举),那么有一个惊人的事实是:可选型就是一个枚举!它是一个非常简单的枚举,它是一个泛型类似于数组。就像数组的定义Array,我们给T不同的值,那么就代表不同值类型的数组,而数组的定义只有一个Array,非常的简便。可选型也是一样,看上面的例子。x是一个可选型,如果有值得话值类型是
cg1991130
·
2015-04-12 19:00
ios8
swift
paul
斯坦福公开课
Hegarty
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记4 MVC enum Tuple Dictionary
回顾一下我们上一话中的代码:@IBActionfuncoperate(sender:UIButton){ letoperation=sender.currentTitle! switchoperation{ case"×": performOperation{$0*$1} case"÷": performOperation{$1/$0} case"+": performOperation{$
cg1991130
·
2015-04-11 09:00
mvc
ios8
swift
paul
Hegarty
斯坦福公开课
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记3 Xcode、Auto Layout及MVC
继续上一话中的计算器Demo,上一话讲到类必须被初始化,类中的属性也必须被初始化,所以你不能只声明而不给它一个处置,那么问题来了,我们从storyboard中拖拽的@IBOutlet为什么只有声明而不需要初始化呢,这是因为它的类型依旧是一个optional,在你初始化之前已经被赋值为nil了,这也就是为什么你不需要再初始化它的原因。@IBOutletweakvardisplay:UILabel
cg1991130
·
2015-03-31 09:00
mvc
ios8
swift
斯坦福
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记2 Xcode、Auto Layout及MVC
接着上一话来讲,上一话中讲到了MVC,那么MVC在IOS8开发中是如何应用的呢?PaulHegarty老师给我们展示了一个计算器的Demo,首先新建一个工程,老师把AppDelegate.swift、LaunchScreen.xib和Images.xcassests文件放到了supportingFiles文件夹中,那么剩下的两个文件ViewController.swift就是MVC中的C(控制器
cg1991130
·
2015-03-30 17:00
xcode
ios8
swift
Optional
斯坦福
【我们都爱Paul
Hegarty
】斯坦福IOS8公开课个人笔记1 IOS8概述
首先感谢网易公开课和SwiftV课堂的朋友们辛苦翻译,这个系列是我学习斯坦福IOS8公开课的个人心得体会和笔记,希望能给大家带来启发。首先我们要知道IOS系统中的结构情况,从贴近硬件的底层到贴近用户的顶层,分为四个层次:1.CoreOS层在最下层,很多人可能不知道IOS是一个基于UNIX的操作系统,它大量借鉴了MacosX的内核部分,MacOSX我们肯定不会陌生,命令行的使用很好的证明了它是一个
cg1991130
·
2015-03-30 16:00
ios8
swift
paul
Hegarty
斯坦福公开课
iOS 学习资料整理
课程主要讲解了一些 iOS 开发工具和 API 以及 iOS SDK 的使用, 属于 iOS 基础视频iPad and iPhone Application Development该课程的讲师 Paul
Hegarty
拉偶有所依
·
2015-01-19 10:00
源代码
Objective-C
开发者
ios开发
cocos2d-x
iOS 学习资料整理
课程主要讲解了一些 iOS 开发工具和 API 以及 iOS SDK 的使用, 属于 iOS 基础视频iPad and iPhone Application Development该课程的讲师 Paul
Hegarty
lz201234
·
2015-01-19 09:00
ios
源代码
开发者
应用程序
cocos2d-x
上一页
1
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他