
iOS开发那些事
iteye_1521
这个作者很懒,什么都没留下…
展开
-
iOS网络编程-ASIHTTPRequest框架同步请求
在ASIHTTPRequest框架中与HTTP请求相关的类有:ASIHTTPRequest和ASIFormDataRequest,其中最常用的是ASIHTTPRequest,ASIFormDataRequest是ASIHTTPRequest的子类,ASIFormDataRequest可以发送类似与HTML表单数据,也可以上传数据,默认采用POST请求方法。也可以其它的HTTP请求方法。它们都可以...2013-04-01 08:28:32 · 128 阅读 · 0 评论 -
iOS网络编程--ASIHTTPRequest框架安装和配置-图文解说
ASIHTTPRequest框架是优秀的第三方Objective-C的HTTP框架,支持Mac OS X和iOS下的HTTP开发。技术支持网站是http://allseeing-i.com/ASIHTTPRequest/。具有如下优点: 支持下载数据放在内存或本地文件 容易访问请求和应答HTTP header 支持Cookie 支持GZIP请求或应答 支持缓存 支持同步或异步请求 支持HTTPS ...2013-03-29 15:19:53 · 89 阅读 · 0 评论 -
iOS开发那些事-iOS网络编程异步GET方法请求编程
上篇博客提到同步请求,同步请求用户体验不好,并且介绍了在同步方法上实现异步,事实上iOS SDK也提供了异步请求的方法。异步请求会使用NSURLConnection委托协议NSURLConnectionDelegate。在请求不同阶段 会回调委托对象方法。NSURLConnectionDelegate协议的方法有:connection:didReceiveData: 请求成功,开始接收数据,...2013-03-27 10:13:23 · 184 阅读 · 0 评论 -
iOS开发那些事-iOS网络编程同步GET方法请求编程
iOS SDK为HTTP请求提供了同步和异步请求两种不同的API,而且可以使用GET或POST等请求方法。我们先了解其中最为简单的同步GET方法请求。 为了学习这些API的使用我们还是选择第3章MyNotes“备忘录”应用实例,与第3章不同的是数据来源于服务器端,而不是本地的Notes.xml(或Notes.json)文件。 首先实现查询业务,查询业务请求可以在主视图控制器Mas...2013-03-25 09:49:33 · 134 阅读 · 0 评论 -
iOS开发那些事-Git在Xcode中的配置与使用常见问题总结
书接上回提出的Git在Xcode中的配置与使用常见问题4个问题 问题1,如何在Xcode中创建代码库,并添加和提交代码到代码库?问题2,如何在Xcode中提交推送给远程服务器代码库?问题3,如何在Xcode中克隆远程服务器代码库到本地?问题4,如何使用Xcode获取远程代码库数据,并解决冲突问题? 1、问题1创建代码库有两种方式,一种是新建工程时候创建,另一种是把...2013-03-21 10:08:02 · 113 阅读 · 0 评论 -
iOS开发那些事-Git在Xcode中的配置与使用
很多Git命令都是在命令行下运行的,命令行下管理Git有很多优点不用多说。但最大的缺点是要求用户记住这些命令。因此Git图形界面还是很受一 些用户欢迎的,其中Xcode作为集成开发环境工具,也提供了一定Git图形界面功能。但是要想在Xcode中使用Git管理工程代码还想需要进行一些配 置,然后才能使用。如果我们是使用Xcode 4创建的一个iOS工程,在终端的命令行中提交代码时候,可能会出现...2013-03-20 08:30:23 · 96 阅读 · 0 评论 -
iOS开发那些事-故事板实现标签导航
故事板实现标签导航用故事板技术实现标签导航模式。 使用“Tabbed Application”模版,创建一个名为 “TabNavigationStoryborad”的工程。勾选“Use Storyborads”、“Use Automatic Reference Counting”。创建完成之后打开MainStoryboard.storyboard。三个Controller S...2013-03-18 09:13:18 · 158 阅读 · 0 评论 -
iOS开发那些事-平铺导航-基于Page的导航及案例实现
基于分页导航实现 在iOS 5之后,可以使用分页控制器(UIPageViewController)构建类似于电子书效果的应用,我们称为基于分页的应用。一个分页应用有很多相关的视图控制器 分页控制器(PageViewController)需要放置在一个父视图控制器中,在分页控制器下面还要有子视图控制器,每个子视图控制器对应图中的一个页面。 在基于分页...2013-03-11 16:58:18 · 136 阅读 · 0 评论 -
iOS开发那些事-平铺导航–基于分屏导航及案例实现
平铺导航模式是非常重要的导航模式。一般用于简单的扁平化信息浏览或任务。扁平化信息是指这些信息之间没有从属的层次关系,如中国的城市中北京、上 海和哈尔滨之间是扁平化信息,而哈尔滨市与黑龙江省之间的关系是从属的层次关系,层次关系信息可以采用标签导航和树形结构导航。从一个案例开始介绍平铺导航。如果我想为开发一个基于iPhone的“画廊”应用,目前只有3幅名画(左图是毕加索-哭泣、中图是达芬奇-蒙娜...2013-03-07 11:09:16 · 83 阅读 · 0 评论 -
iOS开发那些事-表视图UI设计模式
软件设计中有设计模式,在UI设计方面也有设计模式。由于表视图的应用在iOS中极其广泛,本节向大家介绍表视图中两个UI设计模式:分页模式和下拉刷新(Pull-to-Refresh)模式。这两种模式已经成为移动平台开发的标准。 分页模式 分页模式规范了移动平台进行大量数据请求的处理方式 。 下拉刷新模式 下拉刷新(Pull-to-...2013-03-05 13:25:16 · 97 阅读 · 0 评论 -
iOS开发那些事--自定义单元格实现
自定义单元格当苹果公司提供给的单元格样式不能我们的业务需求的时候,我们需要自定义单元格。在iOS 5之前,自定义单元格可以有两种实现方式:代码实现和用xib技术实现。用xib技术实现相对比较简单,创建一个xib文件,然后定义一个继承 UITableViewCell类单元格类即可。在iOS 5之后我们又有了新的选择,故事板实现方式,这种方式比xib方式更简单一些。 我们把简单表视图案例...2013-03-01 14:23:57 · 111 阅读 · 0 评论 -
iOS开发那些事--简单表视图
表视图是iOS开发中使用最频繁的视图,我们一般都会选择以表的形式来展现数据,比如通讯录、频道列表等。表视图分段、分组、索引等功能使我们所展 示的数据看起来更规整更有调理,更令人兴奋的是表视图还可以利用细节展示等功能多层次的展示数据,正所谓一表胜千言。 不过,相较于其它控件表视图的使用比较复杂,但是对比于表视图各种灵活多变的功能,我们在使用上花费的努力还是相当值得的。 简单表视...2013-02-27 16:25:47 · 109 阅读 · 0 评论 -
iOS开发那些事-iOS常用设计模式–委托模式案例实现
书接上回,应用案例我们以UITextFieldDelegate为例来说明一下委托的使用。 UITextFieldDelegate是控件UITextField的 委托,控件的委托主要负责响应控件事件或控制其他对象。除了UITextField,WebView、UITableView等控件也有相应的委托对象。打开UITextFieldDelegate的API文档,其中有4个有关编辑的方法,还要...2013-02-25 10:00:40 · 92 阅读 · 0 评论 -
iOS开发那些事-iOS常用设计模式–委托模式
对于iOS开发,举例Cocoa框架下的几个设计模式为大家分析。当然,Cocoa框架下关于设计模式的内容远远不止这些,我们选择了常用的几种:单例模式、委托模式、观察者模式、MVC模式。 委托模式 委托模式从GoF 设计装饰(Decorator)、适配器(Adapter)和模板方法(Template Method)等模式演变而来。几乎每一个应用都会或多或少地使用到委托模式...2013-02-21 17:02:53 · 102 阅读 · 0 评论 -
iOS网络编程-ASIHTTPRequest小例子-数据请求队列
实例:请求队列我们通过一个例子介绍一下请求队列使用,我们设计了一个应用,用户点击GO按钮从服务器同时下载两张图片显示在画面中。 我们直接看看主视图控制器ViewController.h代码如下:#import “ASIHTTPRequest.h”#import “ASINetworkQueue.h”#import “NSNumber+Message.h”#...2013-04-05 08:40:19 · 97 阅读 · 0 评论 -
iOS网络编程-MBProgressHUD等待指示器
第三方的等待指示器,MBProgressHUD就是第三方提供的等待指示器框架。下面是MBProgressHUD提供的等待指示器样式,它们基 本可以分为:未知结束时间和已知结束时间两大类等待指示器,在MBProgressHUD中可以为等待指示器添加标签和详细标签 MBProgressHUD的下载地址是https://github.com/matej/MBProgres...2013-04-09 10:28:09 · 166 阅读 · 0 评论 -
iOS网络编程-iOS中Socket编程介绍
使用Socket进行C/S结构编程,连接过程 服 务器端监听某个端口是否有连接请求。服务器端程序处于堵塞状态,直到客户端向服务器端发出连接请求,服务器端接受请求程序才能向下运行。一旦连接建立起 来,通过Socket可以获得输入输出流对象。借助于输入输出流对象就可以实现与客户端的通讯,最后不要忘记关闭Socket和释放一些资源(包括:关闭 输入输出流)。客户端流程是先指定要通讯的服务器...2013-04-12 11:16:07 · 94 阅读 · 0 评论 -
智捷公开课马上开始了-欢迎大家一起讨论学习-第一系列读《Swift开发指南(修订版) 》看Swift视频教程...
引用:智捷课堂携手51CTO学院、图灵教育联合举办iOS线上培训就业班系列体验公开课。 分享移动开发、移动设计方向最新,最热,最抢眼技术热点以及设计经验。我们每周将最少举办一次公开课,同时会提前安排公开课进度。关于公开课内容,我们将选择时下热门技术与大家分享,同时我们也希望能与大家进行交流,并搜集大家想了解的热点与大家分享。直播时间1月16日至2月10日,每周二、周四晚8...2015-01-15 16:27:52 · 119 阅读 · 0 评论 -
《iOS开发指南》要改iOS8版本了,听听您的意见?
《iOS开发指南》要改iOS8版本了,听听您的意见?参加问卷同学均可获得智捷课堂50元代金卡一张,同时抽取一名同学赠送即将出版的基于iOS8的《iOS开发指南》一本,欢迎大家填写问卷http://www.diaochapai.com/survey/17a0cd7b-ef61-40ec-b51f-4e85acdd9fb5 ...2014-12-30 11:02:38 · 83 阅读 · 0 评论 -
Swift数字类型之间的转换
Swift数字类型之间的转换Swift是一种安全的语言,对于类型的检查非常严格,不同类型之间不能随便转换。一、整型之间的转换在C和Objective-C等其他语言中,整型之间有两种转换方法:从小范围数到大范围数转换是自动的;从大范围数到小范围数需要强制类型转换,有可能造成数据精度的丢失。而在Swift中这两种方法是行不通的,我们需要通过一些函数进行显式地转换,代码如下:[html]...2014-09-05 10:02:35 · 212 阅读 · 0 评论 -
Swift内存管理-示例讲解
具体而言,Swift中的ARC内存管理是对引用类型的管理,即对类所创建的对象采用ARC管理。而对于值类型,如整型、浮点型、布尔型、字符串、元组、集合、枚举和结构体等,是由处理器自动管理的,程序员不需要管理它们的内存。一、引用计数每个Swift类创建的对象都有一个内部计数器,这个计数器跟踪对象的引用次数,称为引用计数(Reference Count,简称RC)。当对象被创建的时候,引用计数为1,每...2014-09-04 20:18:52 · 90 阅读 · 0 评论 -
Swift静态属性
在介绍静态属性之前,我们先来看一个类的设计,有一个Account(银行账户)类,假设它有3个属性:amount(账户金额)、interestRate(利率)和owner(账户名)。在这3个属性中,amount和owner会因人而异,不同的账户这些内容是不同的,而所有账户的interestRate都是相同的。amount和owner属性与账户个体有关,称为实例属性。interestRate属性与个...2014-09-01 22:12:15 · 112 阅读 · 0 评论 -
Swift构造器重载
与函数一样,方法也存在重载,其重载的方式与函数一致。那么作为构造器的特殊方法,是否也存在重载呢?答案是肯定的。一、构造器重载概念Swift中函数重载的条件也适用于构造器,条件如下:函数有相同的名字;参数列表不同或返回值类型不同,或外部参数名不同;Swift中的构造器可以满足以下两个条件,代码如下:[html] view plaincopy class Rectan...2014-08-30 20:07:11 · 105 阅读 · 0 评论 -
Swift项目开发实战-基于分层架构的多版本iPhone计算器-直播公开课
Swift项目开发实战-基于分层架构的多版本iPhone计算器-直播公开课本课程采用Q Q群直播方式进行直播,价值99元视频课程免费直播。完整的基于Swift项目实战,手把手教你做一个Swift版iPhone计算器。(直播过程也有惊喜!)直播Q Q群:362298485(直播时点击群视频即可进入直播课堂)直播时间:8月26日(周二),9月2日(周四),每天20:00-22:00欢迎咨询客服Q...2014-08-21 14:59:47 · 129 阅读 · 0 评论 -
iOS开发那些事-移动平台架构设计
低耦合企业级系统架构设计我们往往称JavaEE或.Net 开发的产品为“系统”,而移动平台(主要是:Android、iOS和Window Phone)开发的产品为“应用”。“系统”比较复杂,需要架构设计,而“应用”相对比较简单,这是不是意味着我们不需要考虑架构问题呢? 我 们首先了解一下企业级系统架构设计。软件设计的原则是提高软件系统的“可复用性”和“可扩展性”,系统架构设计采用层次...2013-04-24 09:18:57 · 88 阅读 · 0 评论 -
iOS开发那些事-构建自适应iPhone和iPad工程
有的时候应用需要能够在iPhone和iPad上运行,当然我们可以选择做两个完全不同的工程,然后共用一些类,但是我们也可以只创建一个工程,然后编译生成一个产品,这个产品能够自适应iPhone和iPad设备,然后在App Stroe发布的时候,它会有两套不同的截图展示给用户。App Store上的Evernote应用,它有两套截图iPhone和iPad,这说明Evernote就是自适应iPhone...2013-04-22 16:16:31 · 103 阅读 · 0 评论 -
iOS网络编程-iOS中解析Bonjour服务
服务器端Bonjour服务发布成功之后,客户端可以通过NSNetService解析服务,解析成功后,可以获得通讯的数据细节,如:IP地址、端口等信息。 首先需要实例化NSNetService对象代码如下: -(id)init {_service = [[NSNetService alloc] initWithDomain:@”local.”type:@”_tony...2013-04-17 16:08:27 · 394 阅读 · 0 评论 -
iOS网络编程实践--NSStream实现TCP Socket iPhone客户端
客户端我们使用iPhone应用程序,画面比较简单。点击发送按钮,给服务器发送一些字符串过去。点击接收按钮就会从服务器读取一些字符串,并且显示在画面上。 有关客户端应用的UI部分不再介绍了,我们直接看代码部分,Socket客户端可以采用CFStream或NSStream实现,CFStream 实现方式与服务器端基本一样。本例我们采用NSStream实现。NSStrea...2013-04-15 11:45:10 · 76 阅读 · 0 评论 -
《从零开始学Swift》学习笔记(Day 66)——Cocoa Touch设计模式及应用之通知机制...
原创文章,欢迎转载。转载请注明:关东升的博客 通知(Notification)机制是基于观察者(Observer)模式也叫发布/订阅(Publish/Subscribe)模式,是 MVC(模型-视图-控制器)模式的重要组成部分。 问题提出 天气一直是英国人喜欢讨论的话题,而最近几年天气的变化也成为中国人非常关注的话题。我会根据天气预报决定是坐地铁还是开车上班,我的女儿也会根据天气...原创 2016-01-28 17:33:08 · 95 阅读 · 0 评论 -
《从零开始学Swift》学习笔记(Day 65)——Cocoa Touch设计模式及应用之选择器
《从零开始学Swift》学习笔记(Day 65)——Cocoa Touch设计模式及应用之选择器 原创文章,欢迎转载。转载请注明:关东升的博客 实现目标与动作关联使用UIControl类addTarget(_:action:forControlEvents:)方法,示例代码如下:button.addTarget(self, action: "onClick:", ...原创 2016-01-27 12:54:24 · 102 阅读 · 0 评论 -
《从零开始学Swift》学习笔记(Day 64)——Cocoa Touch设计模式及应用之目标与动作...
原创文章,欢迎转载。转载请注明:关东升的博客 目标(Target)与动作(Action)是iOS和OS X应用开发的中事件处理机制。 问题提出如图所示是一个ButtonLabelSample案例设计原型图,其中包含一个标签和一个按钮,当点击按钮的时候,标签文本会从初始的Label替换为HelloWorld。 ButtonLabelSample案例首先要解决的问...原创 2016-01-25 15:08:14 · 109 阅读 · 0 评论 -
《从零开始学Swift》学习笔记(Day 63)——Cocoa Touch设计模式及应用之单例模式 ...
原创文章,欢迎转载。转载请注明:关东升的博客 什么是设计模式。设计模式是在特定场景下对特定问题的解决方案,这些解决方案是经过反复论证和测试总结出来的。实际上,除了软件设计,设计模式也被广泛应用于其他领域,比如UI设计和建筑设计等。下面来介绍Cocoa Touch框架中的设计模式中的单例模式。 单例模式单例模式的作用是解决“应用中只有一个实例”的一类问题。在Cocoa T...原创 2016-01-22 16:41:32 · 140 阅读 · 0 评论 -
《从零开始学Swift》学习笔记(Day 62)——Core Foundation框架之内存托管对象与非托管对象...
原创文章,欢迎转载。转载请注明:关东升的博客 内存托管对象Swift中调用Core Foundation函数获得对象时候,对象分为:内存托管对象和内存非托管对象。内存托管对象就是由编译器帮助管理内存,我们不需要调用CFRetain函数获得对象所有权,也不需要调用CFRelease函数放弃对象所有权。获得这些内存托管对象的方法,是采用了CF_RETURNS_RETAINED或...原创 2016-01-20 10:13:06 · 165 阅读 · 0 评论 -
《从零开始学Swift》学习笔记(Day 61)——Core Foundation框架之内存管理
原创文章,欢迎转载。转载请注明:关东升的博客 在Swift原生数据类型、Foundation框架数据类型和Core Foundation框架数据类型之间转换过程中,虽然是大部分是可以零开销桥接,零开销并不意味着内存什么都不用管。Swift类型内存管理是采用ARC,Foundation类型和Core Foundation类型内存管理都是采用MRC或ARC,Core Foundation类...原创 2016-01-18 10:22:21 · 113 阅读 · 0 评论 -
《从零开始学Swift》学习笔记(Day 46)——下标重写
原创文章,欢迎转载。转载请注明:关东升的博客 下标是一种特殊属性。子类属性重写是重写属性的getter和setter访问器,对下标的重写也是重写下标的getter和setter访问器。下面看一个示例:class DoubleDimensionalArray { let rows: Int, columns: Int var grid: [I...原创 2015-12-09 10:15:59 · 115 阅读 · 0 评论 -
关东升的iOS实战系列图书 《iOS实战:入门与提高卷(Swift版)》已经上市
承蒙广大读者的厚爱我的 《iOS实战:入门与提高卷(Swift版)》京东上市了,欢迎广大读者提出宝贵意见。http://item.jd.com/11766718.html ...原创 2015-09-22 11:12:20 · 128 阅读 · 0 评论 -
《从零开始学Swift》学习笔记(Day 10)——运算符是“ +、-、*、/ ”吗?
原创文章,欢迎转载。转载请注明:关东升的博客 运算符是用于执行程序代码运算,会针对一个或一个以上操作数项目来进行运算。例如:2+3,其操作数是2和3,而运算符则是“+”。那么“+、-、*、/”是运算符。运算符有哪几种呢?在Swift语言中主要的运算符包括算术、关系、逻辑、位运算符等。“ +、-、*、/ ”是算术运算符中的二元运算符,一元运算符是是-、++和--。<...原创 2015-09-09 11:01:27 · 106 阅读 · 0 评论 -
《从零开始学Swift》学习笔记(Day 7)——Swift 2.0中的print函数几种重载形式
原创文章,欢迎转载。转载请注明:关东升的博客 Swift 2.0中的print函数有4种重载形式: print(_:)。输出变量或常量到控制台,并且换行。print(_:_:)。输出变量或常量到指定类型的流中,并且换行。print(_:appendNewline:)。输出变量或常量到控制台,appendNewline参数是布尔值,...原创 2015-08-28 13:37:53 · 144 阅读 · 0 评论 -
iOS数据持久化-SQLite数据库使用详解
使用SQLite数据库创建数据库创建数据库过程需要3个步骤:1、使用sqlite3_open函数打开数据库;2、使用sqlite3_exec函数执行Create Table语句,创建数据库表;3、使用sqlite3_close函数释放资源。 这个过程中使用了3个SQLite3函数,它们都是纯C语言函数,通过Objective-C去调用C函数当然不是什么问题,但是也要注...2013-07-18 10:17:28 · 129 阅读 · 0 评论 -
iOS6定位服务编程详解
现在的移动设备很多都提供定位服务,使用iOS系统的iPhone、iPod Touch和iPad都可以提供位置服务,iOS设备能提供3种不同途径进行定位:Wifi, 蜂窝式移动电话基站, GPS卫星 iOS 不像Android系统在定位服务编程时,可以指定采用哪种途径进行定位。iOS的API把底层这些细节屏蔽掉了,开发人员和用户并不知道现在设备是采用 哪种方式进行定位的,iOS系统会根据设...2013-07-09 16:22:38 · 199 阅读 · 0 评论