
iphone开发之语法部分
文章平均质量分 77
more2010wei
2010年6月毕于厦门大学软件工程专业,从事移动互联Symbian开发一年多,转为ios开发,对C,C++和Object-C等语言有心得,热衷于技术,喜欢研究算法,具有开源精神!Knuth是我心中永远的神话!
展开
-
Objective-C中的一些特殊的数据类型
在Objective-C中,有一些我们之前并不熟悉但是经常见到的数据类型,比如id、nil、Nil、SEL等等。在很多文章里,我们都见过这些数据类型的介绍,但是都没有说的太清楚。这篇文章从最底层的定义开始,介绍一下这些类型到底是怎么定义的,这会帮助我们更加深入地了解Objective-C。参考:http://unixjunkie.blogspot.com/2006/02/nil转载 2012-03-31 18:53:01 · 1820 阅读 · 0 评论 -
关于iphone开发中的@property和@synthesize的一些见解
我的体会是@property和@synthesize有以下两个作用:1.作用一@property是在头文件.h中声明一个变量的setter和getter方法。@synthesize是在m文件中定义setter和getter方法的实现。2.作用二@property,在声明变量方法的时候可以附加定义该变量的属性。如retain,assign,readonly,nonautomi原创 2012-03-12 17:45:08 · 28668 阅读 · 4 评论 -
关于oneway void
在 XCode 4.2 (with LLVM):里 -(void)release {} 会弹出警告 warning: Semantic Issue: Conflicting distributed object modifiers on return type in implementation of 'release' 为了去掉警告 修改如原创 2013-01-04 10:55:09 · 5422 阅读 · 0 评论 -
iPhone程序开发 KVO/KVC实现机理分析
iPhone程序开发KVO/KVC实现机理分析是本文要介绍的内容,不多说,直接进入话题。我们来看详细内容。Objective-C里面的Key-Value Observing (KVO)机制,非常不错,可以很好的减少浇水代码。关于KVO的学习,可以参考文章:《Key-Value Observing快速入门》:http://www.cocoadev.cn/Objective-C/Key-Value转载 2013-01-29 17:44:59 · 2476 阅读 · 0 评论 -
关于ARC需要了解的一些基本知识点
ARC指南:http://download.youkuaiyun.com/detail/zkdemon/4213790ARC是iOS 5推出的新功能,全称叫 ARC(Automatic Reference Counting)。简单地说,就是代码中自动加入了retain/release,原先需要手动添加的用来处理内存管理的引用计数的代码可以自动地由编译器完成了。该机能在 iOS 5/ Mac转载 2013-09-02 10:45:25 · 4322 阅读 · 0 评论 -
Objective-C语法之NSSet和NSMutableSet
NSSet和NSMutableSet是无序的, 但是它保证数据的唯一性。当插入相同的数据时,不会有任何效果。从内部实现来说是hash表,所以可以常数时间内查找一个数据。1、NSSet的使用[NSSet setWithSet:(NSSet *)set]; 用另外一个set对象构造[NSSet setWithArray:(NSArray *)array];用数组构造[NSSet s转载 2013-12-05 22:55:06 · 11259 阅读 · 0 评论 -
处理tableview的一些简单的局部刷新逻辑
tableview的局部刷新逻辑,通常是为了实现某一些或者一组效果,依赖于三个函数,reload,delete,insert。tableview的很多很炫的动画效果都是以此来实现,但是这几个函数,对cell高度可变的table的局部刷新作用,个人觉得是影响体验的,每一个cell第一次配置好之后,第二次再reload一遍,也是一个窝火的事情。但是,but,哈哈,你懂的,如果你想对特定的cell做一些转载 2013-12-04 17:50:58 · 13538 阅读 · 0 评论 -
ios8 系统定位问题
今天在开发的时候发现了一个iOS8的定位问题,执行操作之后,不会调用到定位之后的delegate方法中,然后找了一些资料来了解了一下ios8系统下的定位,发现确实是有所不同的:解决方法:1.在info.plist中添加key;NSLocationWhenInUseDescription,允许在前台获取GPS的描述NSLocationAlwaysUsageDescription,允许原创 2014-12-11 15:26:52 · 8642 阅读 · 0 评论 -
Objective-C 中Self 和 Super 详解
Objective-C 中Self 和 Super 详解本文要介绍的内容,在 Objective-C 中的类实现中经常看到这两个关键字 self 和 super,以以前 oop 语言的经验,拿 c++ 为例,self 相当于 this,super 相当于调用父类的方法,这么看起来是很容易理解的。以下面的在 Objective-C 中的类实现中经常看到这两个关键字 ”self” 和 ”s转载 2015-03-05 17:43:17 · 3355 阅读 · 3 评论 -
iphone的单态(singleton)设计模式(即全局单实例模式)
例模式顾名思义就是只有一个实例,它确保一个类只有一个实例,并且自行实例化并向整个系统提供这个实例。它经常用来做应用程序级别的共享资源控制。这个模式使用频率非常高,通过一个单例类,可以实现在不同窗口之间传递数据。在objective-c中要实现一个单例类,至少需要做以下四个步骤:1、为单例对象实现一个静态实例,并初始化,然后设置成nil,2、实现一个实例构造方法检查上面声明的静态实例原创 2012-03-31 18:15:30 · 1680 阅读 · 0 评论 -
iOS 声明属性关键字讲解
atomic: 原子操作(原子性是指事务的一个完整操作,操作成功就提交,反之就回滚. 原子操作就是指具有原子性的操作)在objective-c 属性设置里面默认的就是atomic,意思就是setter/getter函数是一个原子操作,如果多线程同时调用setter时,不会出现某一个线程执行完setter所有语句之前,另一个线程就开始执行setter,相当于函数头尾加了锁. 这样的话并发原创 2012-07-30 11:39:56 · 2931 阅读 · 0 评论 -
Objective-C 语法快速参考(附:Learning_Objective-C_A_Primer_中文版)
关联:1. http://cocoadevcentral.com/d/learn_objectivec/2.http://www.otierney.net/objective-c.html.zh-tw.big53.http://www.geekylemon.com/xcodetutorials.htm4. http://www.cocoachina.com/b/原创 2012-03-31 17:46:46 · 1982 阅读 · 0 评论 -
Objective-C 之类目(category)的应用
类目(Category)Category提供了一种比继承(inheritance)更为简洁的方法来对class进行扩展,我们可以为任何已经存在的class添加方法(不包括数据成员)却不需要访问该class的实现文件。新添加的方法和原有的方法具有同等的地位,可以访问class的数据成员,并且完全植入到class的继承体系之中,子类同样会继承新添加的方法。利用category对类进行扩展可以避原创 2012-05-08 10:23:05 · 5097 阅读 · 0 评论 -
Objective-C中的字符串格式化输出
在使用诸如NSLog, [NSString stringWithFormat:]之类的函数时,都是基于c/c++风格的字符串格式化工作的.本来c/c++就没怎么用过,到iphone开发开发时掺合上NS系的对象,格式化输出更是一头的乱.看了一下Programming Guide for Cocoa的文档,还是有比较详尽的说明的,整理出来备查.格式定义The format specif原创 2012-05-28 14:46:06 · 1935 阅读 · 0 评论 -
conformsToProtocol:@protocol()的理解和用法
//conformsToProtocol:@protocol()是用来检查对象是否实现了指定协议类的方法//例子如下,在例子当中会有适当的注释,以助理解这个方法:@protocol MyProtocol- (void) doSomething;@end@interface MyClass : NSObject//直接符合协议的类{}@end@implementatio原创 2012-05-15 11:00:03 · 16577 阅读 · 0 评论 -
Object-C的函数调用机制详解--消息
本文系转载,原文出处:http://blog.youkuaiyun.com/kesalinps:Object-C和C,C++,java的函数调用机制还是有所区别的,其完全的runtime的调用方式是其实现消息机制的本质内容!在入门级别的ObjC 教程中,我们常对从C++或Java 或其他面向对象语言转过来的程序员说,ObjC 中的方法调用(ObjC中的术语为消息)跟其他语言中的方法调用差不原创 2012-05-14 18:39:13 · 17674 阅读 · 3 评论 -
Objective-C 对 URL 进行 URLEncode 编码
//使用到的函数原型- (NSUInteger)replaceOccurrencesOfString:(NSString *)target withString:(NSString *)replacement options:(NSStringCompareOp转载 2012-05-03 11:43:55 · 8311 阅读 · 0 评论 -
Objective-C——消息、Category和Protocol
面向对象永远是个可以吐槽的话题,从开始提出到推崇备至,到充满质疑,一路走来让人唏嘘不已。面向对象的思想可谓历史悠久,20世纪70年代的Smalltalk可以说是面向对象语言的经典,直到今天我们依然将这门语言视为面向对象语言的基础。面向对象是大部分编程语言的基本特性,像C++、Java、Objective-C这样的静态语言,Ruby、Python这样的动态语言都是面向对象的语言。但是如何编写面向转载 2012-08-04 14:25:21 · 1873 阅读 · 0 评论 -
WWDC2012:Objective-C的新特性
接着上一篇文章说,Objective-C在计算机编程语言中有悠久的历史,80年代初Brad Cox和Tom Love发明了Objective-C,1988年乔布斯的Next公司获得了这门编程语言语言的授权,并开发出了Objective-C的语言库和NEXTSTEP的开发环境。NextStep是以Mach和BSD为基础,Objective-C是其语言和运行库。乔布斯回归苹果,NextStep成了转载 2012-08-04 14:29:12 · 1924 阅读 · 0 评论 -
Objective-C如何自己实现一个基于数组下标的属性访问模式
在iOS6.0以及OS X10.8之后,Apple引入了一套非正式协议(informal protocol)与Objective-C语法直接绑定。当你实现了这其中的方法之后即可使用数组下标来访问属性元素。在Foundation库中,NSArray类实现了- (id)objectAtIndexedSubscript:(NSUInteger)idx方法。因此,我们可以这么来访问数组元素:转载 2015-03-27 09:53:29 · 3353 阅读 · 0 评论