
IOS开发
文章平均质量分 60
tanlee007
这个作者很懒,什么都没留下…
展开
-
理解Runtime特性
Objective-C 使用运行时机制,即在程序运行时才决定执行的方法对方法进行调用,其中最主要的是一套消息发送机制。使用C语言实现,方法包含在头文件#import中,里面包含很多运行时方法。1.如我们常规的一条方法调用:[object addDanmicMethod],会在编译时被翻译成objc_msgSend(object,@selector(addDanmicMethod));每原创 2015-03-11 15:03:52 · 826 阅读 · 0 评论 -
给IOS对象添加动态属性
IOS属性和方法的扩展:category与associative作为objective-c的扩展机制的两个特性,category即类型,可以通过它来扩展方法;associative,可以通过它来扩展属性;要用它必须使用的头文件,然后就可以自由使用objc_getAssociatedObject以及objc_setAssociatedObject,我们来看下这两个方法实现:@interfac原创 2013-12-01 15:34:12 · 7328 阅读 · 0 评论 -
IOS面试问题总结
1.搞清楚touch事件的传递(事件的响应链)2.fame,bounds,center,archropoint,alpha3,nil,NSNULL,NULL区别4.KVC and KVO5.NSThread,NSOperation,GCD6.autorelease ,ARC 和非ARC7.xib,storyboard,手动书写代码8.loadView,viewDidLo原创 2013-11-20 17:26:44 · 47465 阅读 · 6 评论 -
iOS 以无线方式安装企业级应用程序
参考:http://help.apple.com/iosdeployment-apps/mac/1.1/#app43ad871e文章出处:http://blog.sina.com.cn/s/blog_5d75da2d0100wofw.htmliOS 4.0版本加入了无线部署功能,所谓无线部署就是完全脱离iTunes的发布程序的一种方式。苹果称之为 OTA部署“无线部转载 2013-11-18 17:31:38 · 3051 阅读 · 1 评论 -
IOS变量的property属性设置和意义总结
IOS 的@property和@synthesize帮我们轻易的生成对象的getter和setter方法来完成对对象的赋值和访问。但是如果我们如果要动态设置对象的getter和setter方法可以使用@property和@dynamic组合。对象访问方法property的属性设置非常多,诸如:atomic和nonatomic,readwrite和readonly,retain,assign和cop原创 2013-11-01 17:22:53 · 8932 阅读 · 0 评论 -
CoreData概略
CoreData是IOS对数据进行对象化管理的一种高效方式,提供了对数据的增、删、查、改基本操作免去了复杂的sqlite语句。其主要由下面一些概念组成。1.NSManagedObjectContext.数据管理上下文,负责都数据进行有效的管理操作数据库中的数据。2.NSManagedObjectModel.数据管理模型,包含数据库的各种信息,如实体,数据结构等信息。3.NSPersis原创 2013-10-25 16:19:12 · 865 阅读 · 0 评论 -
IOS设计模式之我见-单例模式
单例模式应该是23种设计模式中最简单但是最常用的一种设计模式,它依靠特殊的方法返回该类的唯一的实例。单例模式目的是减少频繁创建对象所需要的资源和在初始化后实现对象快速的访问。如果我们需要经常访问某一个类对象的属性或者方法就有必要考虑是否需要采用单例模式。单例模式是利用静态变量的属性存在内存中的静态区,静态变量在应用程序启动后就已由系统分配完成,程序结束由系统就行回收,它保存着对这一实例的唯一引用,原创 2013-09-05 19:45:41 · 877 阅读 · 0 评论 -
iOS游戏第一步安装cocos2d-iphone
1. 下载最新的 cocos2dhttp://code.google.com/p/cocos2d-iphone/downloads/list 或者到网站:http://www.cocos2d-iphone.org/download/下载稳定的(貌似有问题没有下载成功)2. 运行terminal终端进入终端使用用cd命令 进入Cocos2d相应的文件夹键入命令:原创 2013-08-14 21:50:33 · 678 阅读 · 0 评论 -
lame库生成支持i386,armv7,armv7s的静态库
LAME是一个开源的MP3音频压缩软件。按照如下步骤操作:1、http://sourceforge.net/projects/lame/files/lame/3.99/ 下载lame的最新版本解压 2、将shell脚本文件lamebuilder.sh放到解压的文件目录下#!/bin/bashSDK_VERSION="6.1"(SDK支持版本)mkdir原创 2013-07-03 14:14:27 · 2338 阅读 · 0 评论 -
IOS7 iBeacons探寻
最近在学习iBeacons发现这个东西很有潜力,能够改善未来我们生活中的很多用户体验。iBeacons 是IOS7系统最新推出的一个类似于RFID的微定位技术。利用蓝牙4.0(低功耗蓝牙)进行数据传输(iphone 4s 以上设备)。手持设备能够在一定的范围内(可以达到50m之内)收到IBecons基站发送的信号。任何实现了IBeacon协议的蓝牙设备都可以充当ibeacon基站使用。不同其它利用原创 2014-01-23 12:32:17 · 5299 阅读 · 4 评论 -
IOS开发插件和工具总结
最近突然想起要提高我们开发的效率原创 2014-05-23 13:36:04 · 8701 阅读 · 0 评论 -
关于App进入background状态
鉴于苹果对IOS系统的封闭zheng ce原创 2014-05-23 11:55:03 · 10009 阅读 · 0 评论 -
理解Block
Block简称闭包,实际上就是一个程序块,Block的名称类似于函数的入口地址,有自己的作用域范围,在作用域结束接受后被销毁(通常函数结束后),通常被分配在栈中(以便访问局部变量和提高性能),Block本身是一个objective-c 中的对象,适用于内存管理方法,我们可以使用Block来完成一些同步执行的程序片段,封装一些小型的工作和完成一项工作时的回调(callback)。Blocks作为原创 2015-03-11 11:38:29 · 958 阅读 · 0 评论 -
IOS多线程实现方式
IOS应用开发中我们可以使用如下san1.、NSThread 2、Cocoa NSOperation (iOS多线程编程之NSOperation和NSOperationQueue的使用)3、GCD 全称:Grand Central Dispatch( iOS多线程编程之Grand Central Dispatch(GCD)介绍和使用)这三种编程方式从上到下,抽象度层次是从低到高的原创 2014-07-24 15:05:22 · 10305 阅读 · 0 评论 -
给Code添加单元测试
Xcode 5 过后自己集成了单元测试框架原创 2014-06-18 15:58:40 · 849 阅读 · 0 评论 -
IOS的动画实现方式
IOS提供了一系列核心动画类的接口原创 2014-07-24 11:21:31 · 4975 阅读 · 2 评论 -
Xcode运行选项中没有出现Device
当我们需要添加一个设备成为测试设备时。需要把该设备添加到原创 2014-05-29 21:35:00 · 9235 阅读 · 0 评论 -
IOS开发效率之为Xcode添加常用的代码片段
tableview是我们经常使用的控件,而使用tableview控件xi yao原创 2014-06-11 11:45:38 · 6570 阅读 · 0 评论 -
Xcode常用的技巧总结
在Xcode中我们经常会有一些公用的模式,这些模式在所有的gong原创 2014-05-27 16:42:16 · 887 阅读 · 0 评论 -
IOS的icon大小总结
以下出自DescriptionSize for iPhone 5 and iPod touch (high resolution)Size for iPhone and iPod touch (high resolution)Size for iPad and iPad mini (high resolution)原创 2014-06-30 15:36:44 · 2554 阅读 · 0 评论 -
iOS开发经验谈:如何提高应用开发效率?
1. 快捷键事实上,几乎每一个Xcode命令都有一个对应的快捷键,这些快捷键既可以默认,也可以开发者自己设置。磨刀不误砍柴工,多花点时间来熟记每一个快捷键能够让你事半功倍,极大地提高你的工作效率。如果你和我一样,写代码的时候特别喜欢键盘操作,那么这种方式一定会对你大有裨益。如果你不喜欢默认的快捷键,那么,你可以在Key Bindings下的参数选择窗口中对Xcode的默认快捷键进行转载 2013-08-01 10:21:25 · 740 阅读 · 0 评论 -
最火的iOS开源项目
1. AFNetworking支持HTTP请求和基于REST的网络服务(包括GET、POST、PUT、DELETE等);支持ARC;要求iOS 5.0及以上版本;有一些插件扩展已有的功能,还有一个功能齐全的API;从URL中获取JSON特别简单。2. Three20Three20原本是iPhone版Facebook中所使用的工具库,包括照片查看器等一系列的iPhone转载 2013-06-17 14:16:47 · 5611 阅读 · 0 评论 -
NSString 格式化时显示%
在格式化NSString时要显示%号,以为使用转义字符 \ 就可以,但是尝试不行。需要使用两个%%才行,如:origenScoreLabel.text = [NSStringstringWithFormat:@"%.1f%%", origenScore_];原创 2013-07-12 13:57:21 · 2843 阅读 · 0 评论 -
关于使用UIWebView加载HTTPS站点出现NSURLErrorDomain code=-1202
最近在做push 信息到facebook中。当使用UIWebview加载https的站点时webview总是会报NSURLErrorDomain code=-1202,导致网页加载失败。自己打印错误和网上搜索是因为证书失效,https使用超文本安全传输协议,即超文本传输协议(HTTP)和SSL/TLS的组合,用以提供加密通讯及对网络服务器身份的鉴定。当我们的服务器使用自我签名证书时,而UIWebV原创 2012-12-06 14:54:59 · 15004 阅读 · 0 评论 -
加载URL时错误码信息
URL Loading System Error CodesThese values are returned as the error code property of an NSError object with the domain “NSURLErrorDomain”.enum{ NSURLErrorUnknown = -1, NSURLErrorCancelle转载 2012-12-18 18:42:26 · 9248 阅读 · 0 评论 -
objective-c 中的小常识
nil,NULL,NSNULL,Nilnil 是指向objective-c中的对象的空指针,是一个对象,在objective-c中nil对象调用方法不会crash。Nil 是指向objective-c中的类的空指针,表示的是一个空类。NULL 是指向任何类型的空的指针 如C/C++中的空指针,在objective-c中是一个数值NSULL用于集合操作,在集合对象中,表示一个空值的集原创 2012-11-23 15:56:48 · 1123 阅读 · 0 评论 -
XCode的一些调试技巧搜集
XCode 内置GDB,我们可以在命令行中使用 GDB 命令来调试我们的程序。下面将介绍一些常用的命令以及调试技巧。po 命令:为 print object 的缩写,显示对象的文本描述(显示从对象的 description 消息获得的字符串信息)。比如:上图中,我使用 po 命令显示一个 NSDictionary 的内容。注意在左转载 2012-11-23 10:47:54 · 3524 阅读 · 0 评论 -
iOS高效开发必备的10款Objective-C类库
MBProgressHUD(进展指示符库) 地址:https://github.com/jdg/MBProgressHUD 苹果的应用程序一般都会用一种优雅的,半透明的进度显示效果,不过这个API是不公开的,因此你要是用了,很可能被清除出AppStore。而 MBProgressHUD提供了一个替代方案,而且在用户角度上,实现的效果根本看不出和官方程序有什么差别。同转载 2012-11-19 15:00:01 · 747 阅读 · 0 评论 -
Cocoa之Core Data(1)框架详解
转载自:http://4682895.blog.51cto.com/4672895/959304Core data 是 Cocoa 中处理数据,绑定数据的关键特性,其重要性不言而喻,但也比较复杂。Core Data 相关的类比较多,初学者往往不太容易弄懂。计划用三个教程来讲解这一部分:框架详解:讲解 Core data 框架,运作过程,设计的类;Core data应用程序示例转载 2012-11-14 13:43:02 · 546 阅读 · 0 评论 -
深入浅出 Cocoa 之 Core Data(3)- 使用绑定
今天要完成的这个示例,有两个 Entity:StudentEntity 与 ClassEntity,各自有一个名为 name 的Attribute 其中 StudentEntity 通过一个名为 inClass 的 relationship 与 ClassEntity关联,而 ClassEntity 也有一个名为 students 的 relationship 与 Entity:Student转载 2012-11-14 13:55:49 · 1193 阅读 · 0 评论 -
深入浅出 Cocoa 之 Core Data(2)- 代码示例
,建立一个新的 Mac command-line tool application 工程,命名为 CoreDataTutorial。为支持垃圾主动回收机制,点击项目名称,在右边的 Build Setting 中查找 garbage 关键字,将找到的 Objective-C Garbage Collection 设置为 Required [-fobj-gc-only]。并将 main.m 中转载 2012-11-14 13:53:02 · 602 阅读 · 0 评论 -
使用UIBezierPath平滑的画线
UIBezierPath 是根据 Core Graphic Framework 写出的 Class ,能够让我们在 UIView 上画出我们需要的图形,主要就是一个UIBezierPath对象和一个UIColor对象保存画笔的颜色。@implementation SmoothDrawDoodleView@synthesize parentView;@synthesize lastI原创 2013-01-04 15:32:04 · 8803 阅读 · 1 评论 -
ASIHTTPRequest的一些设置信息
转自:http://blog.csdn.net/yhawaii/article/details/7910483设置user agent代码如下:[cpp] view plaincopy[ASIHTTPRequest setDefaultUserAgentString:@"MyApp 1.0"]; 如果不设置use转载 2013-01-04 15:36:06 · 3345 阅读 · 0 评论 -
iphone崩溃日志分析工具symbolicatecrash用法
转载保存自:http://www.cnblogs.com/ydhliphonedev/archive/2012/12/07/2806866.htmliphone崩溃日志分析工具symbolicatecrash Symbolicatecrash是Xcode自带的一个分析工具,可以通过机器上的崩溃日志和应用的.dSYM文件定位发生崩溃的位置,把crash日志中的地址替换成代码相转载 2013-01-08 16:06:40 · 2869 阅读 · 0 评论 -
ios 出现CopyPngFile error解决方法
Not a PNG filCommand /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/copypng emitted errors but did not return a nonzero exit code to indicate failure两原创 2013-07-11 16:04:55 · 8642 阅读 · 0 评论 -
iOS应用性能调优的25个建议和技巧
目录我要给出的建议将分为三个不同的等级: 入门级、 中级和进阶级:入门级(这是些你一定会经常用在你app开发中的建议)1. 用ARC管理内存2. 在正确的地方使用reuseIdentifier3. 尽可能使Views透明4. 避免庞大的XIB5. 不要block主线程6. 在Image Views中调整图片大小7. 选择正确的Collection8. 打开gzip压缩转载 2013-04-12 15:05:00 · 2832 阅读 · 0 评论 -
iOS中常用的四种数据持久化方法简介
原帖地址:http://www.cocoachina.com/bbs/read.php?tid=1374431.属性列表涉及到的主要类:NSUserDefaults,一般 [NSUserDefaults standardUserDefaults]就够用了@interface User : NSObject @property (nonatomic, assign) NS转载 2013-04-01 11:17:43 · 635 阅读 · 0 评论 -
iOS开发常用的宏
转载自:http://www.cocoachina.com/applenews/devnews/2013/0328/5907.html#define NavigationBar_HEIGHT 44 #define SCREEN_WIDTH ([UIScreen mainScreen].bounds.size.width)#define SCREEN_HEIGHT ([UIS转载 2013-04-01 11:05:42 · 832 阅读 · 0 评论 -
一个绘画的Demo
最近,在做关于绘图方面,使用了很多种但是都出现了一些问题。使用opengl绘制,画出的线条不平滑。在使用UIBezierPath绘制时,在实现擦除时有困难还没有找到解决方法。在使用CGMutablePathRef绘制时,每一笔都保存在一个Path数组中,由于是在每次画下一笔的时候,都会对前面的绘图进行重绘导致到后面绘画很卡。下面是经过比较最好的一种方法,每次将绘制的保存为一张图片下次画时再重新加载原创 2013-01-22 12:57:49 · 3373 阅读 · 0 评论 -
Log4Cocoa 使日志便利并强大
Log4Cocoa,参考Log4J做的一款Objective-C的日志开源项目。转载自:http://www.cocoachina.com/bbs/read.php?tid=131646主要特点:1.分级日志记录,分为Debug、 Info、 Warn、Error以及Fatal,可以让生产发布与测试环境使用同样日志代码,跟据需要定义需要记录日志的不同级别。2.输出目转载 2013-01-22 13:13:53 · 1011 阅读 · 0 评论