- 博客(38)
- 资源 (52)
- 收藏
- 关注
转载 Object-C中类的属性
属性通常是指某些由对象封装或储存的数据。它可以是标志(如名称或颜色),也可以是与一个或多个其他对象的关系。一个对象的类定义一个接口,该接口使其对象的用户能获取并设定所封装属性的值。执行这些操作的方法,称为存取方法。存取方法有两种类型,每个方法都必须符合命名约定。“getter”存取方法返回属性的值,且名称与属性相同。“setter”存取方法设定属性的新值,且形式为 setPro
2014-03-28 19:53:32 1588
转载 Git详解之三 Git分支
Git 分支几乎每一种版本控制系统都以某种形式支持分支。使用分支意味着你可以从开发主线上分离开来,然后在不影响主线的同时继续工作。在很多版本控制系统中,这是个昂贵的过程,常常需要创建一个源代码目录的完整副本,对大型项目来说会花费很长时间。有人把 Git 的分支模型称为“必杀技特性”,而正是因为它,将 Git 从版本控制系统家族里区分出来。Git 有何特别之处呢?Git 的分支可谓是
2014-03-28 15:58:05 1044
转载 ios nil、NULL和NSNull 的使用
nil用来给对象赋值(Objective-C中的任何对象都属于id类型),NULL则给任何指针赋值,NULL和nil不能互换,nil用于类指针赋值(在Objective-C中类是一个对象,是类的meta-class的实例), 而NSNull则用于集合操作,虽然它们表示的都是空值,但使用的场合完全不同。示例如下:id object = nil; // 判断对象不为空
2014-03-28 13:28:39 1050
转载 Git使用基础篇
Git是一个分布式的版本控制工具,本篇文章从介绍Git开始,重点在于介绍Git的基本命令和使用技巧,让你尝试使用Git的同时,体验到原来一个版 本控制工具可以对开发产生如此之多的影响,文章分为两部分,第一部分介绍Git的一些常用命令,其中穿插介绍Git的基本概念和原理,第二篇重点介绍 Git的使用技巧,最后会在Git Hub上创建一个开源项目开启你的Git实战之旅1、Git是什么
2014-03-27 18:19:13 995
转载 IOS单例模式及单例模式的优缺点
单例模式的意思就是只有一个实例。单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。#import @interface Singleton : NSObject +(Singleton *) getInstance;@end @implementation Singleton+(Singleton *)
2014-03-24 19:41:56 1496
转载 delegate为什么用ASSIGN 而不是retain
问:为什么很多内置类如UITableViewController的delegate属性都是assign而不是retain的?答:会引起循环引用。这里delegate我们只是想得到实现了它delegate方法的对象,然后拿到这个对象的指针就可以了,我们不期望去改变它或者做别的什么操作,所以我们只要用assign拿到它的指针就可以了。而用retain的话,计数器加1。我们有可能在别的地方期望释
2014-03-21 16:27:37 1069
转载 ios开发:多个Section的TableView
开发多个Section的tableView。首先应该考虑到数据源该如何得到我们这里可以通过两种方式:第一种是读取plist文件。第二种是通过代码进行数据存储以及读取。多个Section需要的数据源是一个字典,字典里的内容是一个数组。在plist文件中可以这样去创建在.h文件中定义一个字典,一个数组在.m文件的viewDidLoad函数中:
2014-03-21 16:13:19 1786
转载 苹果推送通知办事教程 Apple Push&nb
原文地址:Apple Push Notification Services Tutorial" style="text-decoration:none; color:rgb(82,102,115)">(转)苹果推送通知办事教程 Apple Push Notification Services Tutorial作者:浪友dans苹果推送通知办事教程 Apple Push Noti
2014-03-17 12:19:10 2189
转载 contentSize、contentInset和contentOffset区别
这几个都是在ios程序中,经常会注意到的一些小细节,能否真正了解这些,对写ios程序也有很大的好处。frame 是UIView中表示此view的一个矩形面积,包括了view在它的superview中的一些几何上的标识。有起始坐标,也就是origin(CGPoint)和这个矩形面积的宽(width)和高(height)bounds 每个view,除了有对应它的superview的相关
2014-03-14 17:31:10 1661
转载 IOS文件路径处理方法
+ (NSString *)pathWithComponentsNSArray *)components根据components中的元素来构建路径.- (NSArray *)pathComponents解析路径,返回构成路径的各个部分.- (NSString *)lastPathComponent提取路径中的最后一个组成部分- (NSString *
2014-03-14 09:52:43 1652
转载 iOS绘图教程
Core Graphics Framework是一套基于C的API框架,使用了Quartz作为绘图引擎。它提供了低级别、轻量级、高保真度的2D渲染。该框架可以用于基于路径的绘图、变换、颜色管理、脱屏渲染,模板、渐变、遮蔽、图像数据管理、图像的创建、遮罩以及PDF文档的创建、显示和分析。iOS支持两套图形API族:Core Graphics/QuartZ 2D 和OpenGL ES。Open
2014-03-13 17:15:27 1294
转载 [Objective-C]Class类型、class方法
Class类型 到目前为止,我们已经知道了对应于方法的SEL数据类型,和SEL同样在Objective-C里面我们不仅仅可以使用对应于方法的SEL,对于类在Objective-C也为我们准备了类似的机制,Class类型。当一个类被正确的编译过后,在这个编译成功的类里面,存在一个变量用于保存这个类的信息。我们可以通过一个普通的字符串取得 这个Class,也可以通过我们生成的对象取得这
2014-03-13 14:56:14 4370
转载 NSLocalizedString(二)
程序本地化是扩展应用市场的重要砝码.iOS提供了简便的方法来实现本地化,其中用的最多的就是NSLocalizedString.首先查看下NSLocalizedString是什么:#define NSLocalizedString(key, comment) \ [[NSBundle mainBundle] localizedStringForKey:(key) va
2014-03-13 10:33:23 1056
转载 [iOS]给上拉下拉刷新PullToRefresh做本地化 (一)
NOV 04相信很多小朋友都做过下拉刷新,上拉加载更多,或者是点一下加载更多吧,我在几个项目中都用到了上拉下拉刷新,用的是[EGOTableViewPullRefresh],是我觉得同样给力的EGOCache同一个作者的作品。这份代码有两年没更新了,惊奇的发现Commit记录在两天前有点动静,不过它确实挺好用,只是没有支持Block:使用方法很简单,这里就不说了,今天的需求是要把提
2014-03-13 10:28:00 1213
转载 ARC指南1 - strong和weak指针
提示:本文中所说的"实例变量"即是"成员变量","局部变量"即是"本地变量"一、简介ARC是自iOS 5之后增加的新特性,完全消除了手动管理内存的烦琐,编译器会自动在适当的地方插入适当的retain、release、autorelease语句。你不再需要担心内存管理,因为编译器为你处理了一切注意:ARC 是编译器特性,而不是 iOS 运行时特性(除了weak指针
2014-03-13 10:20:53 746
转载 应用程序本地化
一、简介 * 使用本地化功能,可以轻松地将应用程序翻译成多种语言,甚至可以翻译成同一语言的多种方言 * 如果要添加本地化功能,需要为每种支持的语言创建一个子目录,称为”本地化文件夹”,通常使用.lproj作为拓展名 * 当本地化的应用程序需要载入某一资源时,如图像、属性列表、nib文件,应用程序会检查用户的语言和地区,并查找相匹配的本地化文件夹。如果找到了相应的文
2014-03-13 10:17:54 794
转载 Core Data入门
简介 Core Data是iOS5之后才出现的一个框架,它提供了对象-关系映射(ORM)的功能,即能够将OC对象转化成数据,保存在SQLite数据库文件中,也能够将保存在数据库中的数据还原成OC对象。在此数据操作期间,我们不需要编写任何SQL语句,这个有点类似于著名的Hibernate持久化框架,不过功能肯定是没有Hibernate强大的。简单地用下图描述下它的作用:
2014-03-12 16:33:21 696
转载 ARC指南2 - ARC的开启和禁止
要想将非ARC的代码转换为ARC的代码,大概有2种方式:1.使用Xcode的自动转换工具2.手动设置某些文件支持ARC一、Xcode的自动转换工具Xcode带了一个自动转换工具,可以将旧的源代码转成ARC模式1.ARC是LLVM 3.0编译器的特性,而现有工程可能使用老的GCC 4.2或LLVM-GCC编译器,因此首先需要设置使用LL
2014-03-12 16:21:20 748
转载 ARC指南3 - @property
本章介绍引入ARC后@property的使用,跟ARC之前的还是很不一样的一、.h和.m文件的变化说明1.对于.h头文件,主要是将属性定义由retain变为strong[java] view plaincopy@property (retain, nonatomic) 变为
2014-03-12 16:18:02 791
转载 多线程编程2 - NSOperation
一、NSOperation1.简介NSOperation实例封装了需要执行的操作和执行操作所需的数据,并且能够以并发或非并发的方式执行这个操作。NSOperation本身是抽象基类,因此必须使用它的子类,使用NSOperation子类的方式有2种:1> Foundation框架提供了两个具体子类直接供我们使用:NSInvocationOperation和NS
2014-03-12 16:08:16 620
转载 多线程编程4 - GCD
一、简介在iOS所有实现多线程的方案中,GCD应该是最有魅力的,因为GCD本身是苹果公司为多核的并行运算提出的解决方案。GCD在工作时会自动利用更多的处理器核心,以充分利用更强大的机器。GCD是Grand Central Dispatch的简称,它是基于C语言的。如果使用GCD,完全由系统管理线程,我们不需要编写线程代码。只需定义想要执行的任务,然后添加到适当的调度队列(dispatc
2014-03-12 16:02:51 743
转载 多线程编程3 - NSOperationQueue
一、简介一个NSOperation对象可以通过调用start方法来执行任务,默认是同步执行的。也可以将NSOperation添加到一个NSOperationQueue(操作队列)中去执行,而且是异步执行的。创建一个操作队列:[java] view plaincopyNSOperationQueue *queue = [[N
2014-03-12 16:00:16 805
转载 一、第一个cocos2d程序
简介 我们这个专题要学习的是一款iOS平台的2D游戏引擎cocos2d,严格来说叫做cocos2d-iphone,因为cocos2d有很多个版本,我们学习的是iphone版本的。既然是个游戏引擎,那么它肯定是为了方便游戏开发而设计的。使用了cocos2d,你可以编写极少量的代码就做出非常cool的游戏,节省你的开发周期。当然,要想出一个大作,还必须下苦工。在iOS平台的游戏引擎还不止
2014-03-12 15:56:57 1288
转载 二、cocos2d文档的使用
在使用cocos2d进行游戏开发的过程中,难免要查阅cocos2d的API文档,搞清楚怎么使用某个类或者某个方法。幸运的是,cocos2d的作者已经在源代码里面添加了文档注释,我们只需要使用文档生成工具解析源代码生成文档即可。最常用的文档生成工具是Doxygen。 用Doxygen处理cocos2d文档有2种方式:第1种方式:安装Doxygen软件,解析cocos2d源代码,
2014-03-12 15:53:29 1121
转载 三、第一个cocos2d程序的代码分析
在第一讲中已经新建了第一个cocos2d程序,运行效果如下:在这讲中我们来分析下里面的代码,了解cocos2d的工作原理,看看屏幕上的这个"Hello World"是如何显示出来的。这是HelloWorld项目的代码结构:下面,我们开始分析项目中的这些源文件:从程序的入口点开始这么多源文件在这里,究竟先看哪个呢?有些人可能
2014-03-12 15:50:38 975
转载 五、CCNode
本将主要介绍下CCNode这个类,CCNode是所有节点的基类,其中包括我们常用的CCScene(场景)、CCLayer(图层)、CCSprite(精灵)等,它是一个不能够可视化显示的抽象类,只是用来定义所有节点的公共属性和方法的。本讲纯粹是理论。首先来看看CCNode的继承结构图,只列举了常用的类节点的处理1.创建一个新的节点
2014-03-12 15:47:03 1068
转载 六、CCLayer
一个游戏中可以有很多个场景,每个场景里面又可能包含有多个图层,这里的图层一般就是CCLayer对象。CCLayer本身几乎没什么功能,对比CCNode,CCLayer可用于接收触摸和加速计输入。其实,cocos2d对图层并没有严格的要求,图层不一定要使用CCLayer类,它也可以是一个简单的CCNode,为什么呢?我们新建一个图层不就是为了能够容纳更多的子节点么,CCNode也可以添加子节点啊。所
2014-03-12 15:44:20 1071
转载 七、CCScene
CCScene一般情况是游戏里面的根节点,称之为"场景",运行游戏时需要通过CCDirector启动第一个场景。当然,游戏稍微复杂一点的话,可能会包含很多个场景,这就涉及到场景的切换,也是通过CCDirector来完成。CCScene是个抽象的概念,也没有可视化显示的功能,对比CCNode,CCScene基本上没有额外的代码:[java] view plaincop
2014-03-12 15:40:51 1219
转载 四、CCSprite
在介绍CCSprite之前,先要理解游戏开发中的一个核心概念:精灵。精灵也称为游戏对象,它可以用来表示游戏中的任何物体,比如敌人、子弹、甚至是一个背景图片、一段文字。CCSprite可以说是在cocos2d中最常用的一个类,可以称之为"精灵类",它能够以图片的形式将精灵显示到屏幕上。创建精灵在谈怎么创建一个精灵之前,先了解下游戏开发中另一个核心概念:纹理。纹理其实就
2014-03-12 15:37:46 1035
转载 八、CCMenu和CCMenuItem
游戏中经常会提供一些菜单项让用户开始游戏、暂停\继续游戏、打开\关闭音乐或者是返回到上一个界面,比如下面两张图中用红色线框标记的菜单项 我们可以使用CCMenu和CCMenuItem实现上述的菜单功能,CCMenu继承自CCLayer,只能添加CCMenuItem为子节点。一个CCMenuItem就可以表示一个菜单项。CCMenuItem继承自CCNode,来看下它
2014-03-12 15:34:22 943
转载 九、CCAction
之前介绍CCNode的时候说过,动作是指在特定时间内完成移动、缩放、旋转等操作的行为,节点可以通过运行动作来实现动画效果,这里的动作就是指CCAction对象,它有很多的子类,每个子类都封装了不同的动作效果。先来看看CCAction的继承结构图这里我省略了瞬时动作(CCActionInstant)和间隔动作(CCActionInterval)的子类,因为它们又包含了非常
2014-03-12 15:29:15 985
转载 loadView、viewDidLoad及viewDidUnload的关系
标题中所说的3个方法,都是UIViewController的方法,跟UIViewController的view属性的生命周期息息相关。接下来我会一一阐述它们的作用以及它们之间的联系。loadView1.什么时候被调用?每次访问UIViewController的view(比如controller.view、self.view)而且view为nil,loadView方法就会
2014-03-12 15:21:15 749
转载 让UIWebView弹出键盘上的按钮显示中文
UIWebView是一个很常用的视图,一般用来加载网页,比如百度:点击文本框输入框后,会弹出一个带有toolbar的键盘,toolbar中有3个辅助按钮有了这3个按钮,是方便很多,但默认是英文的,有时我们想把按钮文字变为中文其实办法很简单,只需要让你的应用程序支持中文本地化,意思是在项目中新建一个中文的本地化文件夹zh-Hans.
2014-03-12 15:17:33 983
转载 Mac环境下svn的使用
在Windows环境中,我们一般使用TortoiseSVN来搭建svn环境。在Mac环境下,由于Mac自带了svn的服务器端和客户端功能,所以我们可以在不装任何第三方软件的前提下使用svn功能,不过还需做一下简单的配置。我们首先来看下,如何在Mac环境下搭建svn服务器端环境。创建代码仓库,用来存储客户端所上传的代码我先在/User/apple目录下新建一个svn目录,以后
2014-03-12 15:13:05 617
转载 开发中常见问题集锦
这篇文章是专门用来记录开发中一些常见的BUG以及常用的零碎知识点,我会隔一段时间更新内容1.重复调用2次loadView和viewDidLoad最好不要在UIViewController的loadView方法中改变状态栏的可视性(比如状态栏由显示变为隐藏、或者由隐藏变为显示),因为会导致重复调用2次loadView和viewDidLoad方法假设状态栏本来是处于显示状态
2014-03-12 15:08:22 731
转载 iOS图片拉伸技巧
纵观移动市场,一款移动app,要想长期在移动市场立足,最起码要包含以下几个要素:实用的功能、极强的用户体验、华丽简洁的外观。华丽外观的背后,少不了美工的辛苦设计,但如果开发人员不懂得怎么合理展示这些设计好的图片,将会糟蹋了这些设计,功亏一篑。比如下面张图片,本来是设计来做按钮背景的: button.png,尺寸为:24x60现在我们把它用作为按钮背景,按钮尺寸是15
2014-03-12 14:31:40 831
OCHamcrestIOS
2015-09-29
UIWebView与 javascript的交互三
2015-04-23
UIWebView与 javascript的交互二
2015-04-22
JSPatchFixDemo
2017-02-28
Jack3DScrollDemo
2015-12-26
NPCgoPockerFrameWork_NoBug
2015-12-25
JackScrollPlayerDemo1
2015-12-25
JackScrollPlayerDemo
2015-12-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人