- 博客(42)
- 资源 (13)
- 收藏
- 关注
转载 完美解决ios4与ios5输入框随键盘移动问题
iOS5中当键盘输入法切换到中文时,键盘高度由216增加到252像素。这一变化将遮住输入框。如何才能解决这一问题呢? 在iOS5中,新增有notification(UIKeyboardWillChangeFrameNotification)可以用来监测键盘frame的变化。在iOS4中,可以通过UIKeyboardWillShowNotification以及UIKeyboardW
2012-08-31 12:47:19 3065 1
转载 iOS html解析1(包含中文字符)
HTMLParser方法可以参考https://github.com/zootreeves/Objective-C-HMTL-ParserTFHpple方法的使用可以看 https://github.com/topfunky/hpple TFHpple,因为它很简单,也好用,但是它的功能不是很完完善。比如,不能获取children node。它是
2012-08-30 23:13:26 16478 2
转载 [iOS]深入浅出 iOS 之多线程 NSThread
深入浅出 iOS 之多线程 NSThread罗朝辉(http://blog.csdn.net/kesalinCC 许可,转载请注明出处iOS 支持多个层次的多线程编程,层次越高的抽象程度越高,使用起来也越方便,也是苹果最推荐使用的方法。下面根据抽象层次从低到高依次列出iOS所支持的多线程编程范式:1, Thread;2, Cocoa operations;3, Grand Cent
2012-08-27 08:33:07 1134
转载 sqlite3自增key设定(创建自增字段)
在用sqlite设计表时,每个表都有一个自己的整形id值作为主键,其实可以不指定这么一个id值,sqlite内部本来就会为每个表加上一个 rowid,这个rowid可以当成一个隐含的字段使用,但是由sqlite引擎来维护的,在3.0以前rowid是32位的整数,3.0以后是 64位的整数,为什么不直接使用这个内部的rowid作为每个表的id主键呢。相关的文档在这里:?http://www.sq
2012-08-26 18:35:02 1782
转载 NSInvocationOperation多线程教程
多线程编程是防止主线程堵塞,增加运行效率等等的最佳方法。而原始的多线程方法存在很多的毛病,包括线程锁死等。在Cocoa中,Apple提供了 NSOperation这个类,提供了一个优秀的多线程编程方法。本次介绍NSOperation的子集,简易方法的NSInvocationOperation:@implementation MyCustomClass - (void)lau
2012-08-26 18:20:25 1132
转载 ios编程笔记:CFSocket
ios编程笔记:CFSocket(服务端)主要函数:第一步:创建 CFSocketRef CFSocketCreate(CFAllocatorRef allocator, //内存分配类型一般为默认KCFAllocatorDefault SInt32 protocolFamily, //协议族,一般为Ipv4:PF_INET,(Ipv6,PF
2012-08-26 18:12:30 13941
转载 一些有关图像处理的代码片段(抓图、倒影、圆角)
捕捉屏幕截图CALayer实例使用Core Graphics的renderInContext方法可以将视图绘制到图像上下文中以便转化为其他UIImage实例。前提先#import+ (UIImage *) imageFromView: (UIView *)theView { // draw a view's contents into an image context
2012-08-26 17:04:37 3173 1
转载 SDWebImage 笔记
SDWebImage托管在github上。https://github.com/rs/SDWebImage这个类库提供一个UIImageView类别以支持加载来自网络的远程图片。具有缓存管理、异步下载、同一个URL下载次数控制和优化等特征。使用示范的代码:UITableView使用UIImageView+WebCache类(基本应用,UIImageView的一个category)前
2012-08-26 16:36:09 34653 7
原创 iphone下json的解析 NSJSONSerialization
- (IBAction)JOSNButtonPressed:(id)sender { NSString *str=[@"http://douban.fm/j/mine/playlist?type=n&h=&channel=0&from=mainsite&r=4941e23d79" stringByAddingPercentEscapesUsingEncoding:NSUTF8String
2012-08-22 00:30:30 16323
转载 iOS中XML解析
解析 XML 通常有两种方式,DOM 和 SAX:1.Tree-based API:这种API的处理方式是将XML的结构看成是树,然后把树的各部分看成一个对象来处理,这就是我们说的DOM (Document Object Model)方式。在iPhone的SDK里包含了一个libxml2的框架(Framework)就能进行DOM解析方式。Google的GDataXML也是基于l
2012-08-21 10:46:18 1434
转载 iOS下超级简洁的xml解析框架:TBXML
就xml解析来讲,目前用过的最简洁,速度最快的当属tbxml,是基于C框架的所以直接拿在iPhone上用了。先说下用法,把tbxml的4个文件拖入class,然后为工程添加libz.dylib框架即可。废话就不说了,直接看代码,如下:定义了两个方法(其中一个带着递归子方法),分别处理已知结构和未知结构的xml。//调用- (void)viewDidLoad
2012-08-21 10:39:46 3214
转载 TBXML常用API
==========================================================文件tbxml“框架”中包含的文件:TBXML.h - tbxml声明TBXML.m - tbxml实现NSDataAdditions.h - NSData类别等的声明NSDataAdditions.m - NSData类别等的实现,包括base64,gz
2012-08-21 10:38:32 902
转载 KissXml 配置
关于KissXml在iPhone开发中操作xml的优秀表现就不多说了,主要说怎么用。1.上GoogoleCode下载最新的KissXml.zip,地址:http://code.google.com/p/kissxml/downloads/detail?name=KissXML.zip2.解压KissXml,将除了DDXMLTesting外的类声明和实现文件都拖入工程(最好建个gro
2012-08-21 10:37:28 1791
转载 KissXml API
KissXml是iPhone平台目前比较好的xml解析&操作的框架,尤其是他集成了XPath功能,但是网上没有成型的api,就连KissXml自己也没有出过完整的api。为了方便大家快速入门、使用KissXML,就勉强做了这个所谓的API,如有谬误,敬请斧正。==========================================================
2012-08-21 10:36:28 3027
转载 NSJSONSerialization介绍
ios5中apple增加了解析JSON的api——NSJSONSerialization。网上已经有人做过测试,NSJSONSerialization在效率上完胜SBJSON、TouchJSON、YAJL、JSONKit、NextiveJson。详情见这里。既然apple为我们提供了这么良好的工具,我们没理由不用吧。 NSJSONSerialization提供了将JSON数据转换为Fou
2012-08-20 23:52:18 55654 2
转载 HTTP POST GET 本质区别详解
一 原理区别 一般在浏览器中输入网址访问资源都是通过GET方式;在FORM提交中,可以通过Method指定提交方式为GET或者POST,默认为GET提交Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETEURL全称是资源描述符,我们可以这样认 为:一个URL地址,它用于描述一个网络上的资源,而HTTP中的GET,POS
2012-08-20 10:59:51 2589
转载 使用setter方法和=号进行属性赋值的区别
如果你不使用ARC,那么使用setter方法和=号对属性进行赋值是不同的。使用=号赋值,属性不会被retain。 比如: bodyText=s;如果bodyText声明为retain,则你应当自己retain它:bodyText=[s retain];当然,在dealloc方法中,你需要release它避免可能的内存泄露:[bodyTextrelease];
2012-08-20 03:57:51 1306
转载 ASIHTTPRequest和libxml结合,实现边请求边解析
ASIHTTPRequests 是非常强大的 http 异步请求开源框架,libxml 是非常老牌的 C 语言xml函数库。在 http + xml 文件的 javaEE-iPhone 应用中,如何把二者结合起来,实现在异步请求数据的同时,进行xml的同步解析呢?这涉及到 3 方面的关键知识:¥ ASIHTTPRequest这部分的内容可以参考作者另一篇博文《ASIHTTPReque
2012-08-20 03:53:19 823
转载 ASIHTTPRequest系列(四):Cookies
六、使用 CookiesCookies 是重要的服务器状态保持策略。Web 服务器常使用 Cookies 技术来实现用户免登录功能和存储用户状态信息。ASIHTTPRequest 支持客户端 Cookies 的存取。1、服务器端Session 是服务器端技术,虽然 Cookies 是保存在客户端的。因此我们需要一个服务器端环境。打开 Eclipse,新建 Web 工程,随便写几个简单的
2012-08-20 03:51:45 900
转载 ASIHTTPRequest系列(三):文件上传
五、文件上传1、服务端文件上传需要服务端的配合。我们可在本机搭建tomcat测试环境。关于tomcat在Mac OSX下的安装配置,参考作者另一博文《安装Tomcat到Mac OSX》。打开Eclipse,新建web工程。在其中新建一个Servlet UploadServlet:import java.io.*;import java.util.*; import ja
2012-08-20 03:46:01 1481
转载 ASIHTTPRequest系列(二):文件下载
四、下载1、简单下载打开IB,拖入一个Progress View,在源文件中声明为IBOutlet,然后进行连接。-( IBAction )goURL{NSString * path=[ NSSearchPathForDirectoriesInDomains ( NSDocumentDirectory ,NSUserDomainMask , YES ) objectAtIndex
2012-08-20 03:41:40 1318
转载 ASIHTTPRequest系列(一):同步和异步请求
ASIHTTPRequest项目地址: http://github.com/pokeb/asi-http-request/tree ,关于ASIHTTPRequest到底是什么,你可以在项目首页看到。它提供如下功能:提交数据到web服务器或者从web服务器获得数据;下载数据到内存或磁盘;采用html input相同的机制上传文件;断点续传;简单存取HTTP头;上传/下载
2012-08-20 03:39:42 944
转载 利用预渲染加速iOS设备的图像显示
最近在做一个UITableView的例子,发现滚动时的性能还不错。但来回滚动时,第一次显示的图像不如再次显示的图像流畅,出现前会有稍许的停顿感。于是我猜想显示过的图像肯定是被缓存起来了,查了下文档后发现果然如此。后来在《Improving Image Drawing Performance on iOS》一文中找到了一些提示:原来在显示图像时,解压和重采样会消耗很多CPU时间;而如果预
2012-08-20 02:55:45 807
转载 优化UITableView性能
以前看到过一次这篇文章,里面有很多东西不是很理解,现在又看到一次,还是不理解,记录一下,留着以后理解转自:http://www.keakon.net/2011/08/03/%E4%BC%98%E5%8C%96UITableView%E6%80%A7%E8%83%BD在iOS应用中,UITableView应该是使用率最高的视图之一了。iPod、时钟、日历、备忘录、Mail、天气、照片、电
2012-08-20 02:10:22 861
转载 iphone中获取两个矩形的相交区域
//definiton a rect CGRect rect1 = CGRectMake(0.0f, 0.0f, 320.0f, 480.0f); //获取2个矩形的相交区域 rect = CGRectIntersection(rect, bounds); //create smaller or bigger rect(have same center) CGRect
2012-08-20 02:04:54 5454
转载 UISearchBar 和 UISearchDisplayController的使用
之前比較少用UISearchBar 和 UISearchDisplayController,最近閱讀了一些有關資料,簡單做個筆記:1、UISearchBar 和 UISearchDisplayController 在IB中是可以直接使用的,UISearchBar如果不指定delegate及執行相關的方法,那麼與一個TextField類似。加入一個UISearchDisplayControl
2012-08-18 17:10:25 37983 2
转载 当UINavigationController作为UIViewController之后如何去除上部的空白
一般来说UINavigationController是作为UIWindow的子view来使用的,例如当你创建一个Navigation类型的应用程序时,系统会将AppDelegate中的navigationController做为window的根控制器 self.window.rootViewController = self.navigationController; [self.
2012-08-18 15:40:20 2454 1
转载 XCode下的iOS单元测试
XCode 内置了 OCUnit 单元测试框架,但目前最好用的测试框架应该是 GHUnit。通过 GHUnit + OCMock 组合,我们可以在 iOS 下进行较强大的单元测试功能。本文将演示如何在 XCode 4.2 下使用 OCUnit, GHUnit 和 OCMock 进行单元测试。OCUnit在 XCode 下新建一个 OCUnitProject 工程,选中 Includ
2012-08-17 18:31:45 1057
转载 iPhone开发教程之利用 UIImageView 实现全屏动画的代码例子
在 iPhone 应用里加入全屏动画可以让应用更具趣味性,以下这段代码可以实现这一功能AnimationDemoViewController.m- (void)viewDidLoad {[super viewDidLoad];//指定ImageView的展示区域UIImageView *fishAni=[UIImageView alloc] initWithFram
2012-08-17 12:54:03 1322
转载 使用 Three20 的经验分享
记:Three20(简称:TT)是Facebook维护的一个开 源iPhone应用框架。框架封装了一系列视觉控件,网络组件,和工具方法。最近使用TT重构了一个app,这个app在1万行规模使用的是原生代码,架 构非常简单。增长到2万行规模,这个原生的架构已经疲于应付迅速变化的业务需求,因此我们采用TT进行了重构。这里,简单介绍一下使用TT开发的app采 用了怎样的架构,以及开发过程中的经验和教
2012-08-16 03:17:54 859
转载 xcode4中配置Three20开发环境
大名鼎鼎的Three20想必大家都听说过,很多APP都是用它开发的,开发UI很方便,功能也很强大,用它就不必深究枯燥的iOS SDK。今天介绍一下如何在xcode4中配置环境支持Three20开发。1。首先我们得去把源码下载下来。网址在:https://github.com/facebook/three20 解压放在我们工程目录下。2。在解压目录下src/Three20下的Thre
2012-08-16 03:13:21 686
原创 iphone开发返回Documents Tmp 应用程序资源文件夹路径
大伙都知道iphone开发下要经常返回文件夹的路径,但是苹果提供的api返回不同的文件夹又不一样,我在这里统一定义下接口,以后无论是返回Documents还是Tmp还是应用程序资源文件夹路径都只要直接调用:[self dataFilePath:@"data.plist" ofType:kDocuments]下面是源代码:#define kDocuments 1
2012-08-16 00:30:59 2316
转载 iphone开发之解决viewWillAppear失效
你可曾遇到过viewWillAppear没有被调用到的情况产生原因是用了UINavigationController. 将UINavigationController的view作为subview添加到了其他viewController的view中。 或者把UINavigationController添加到UITabbarController中了。 此时,Navigatio
2012-08-16 00:12:16 884
转载 iphone开发之viewDidLoad
在一篇名为loadView 和 viewDidLoad 的区别的copy文章中 写到 viewDidLoad 方法只有当 view 从 nib 文件初始化的时候才被调用。viewDidLoad 用于初始化,加载时用到。 不知道是谁先误解英文原文,写错了,却又许多人跟宝一样到处传 我想说的是viewdidload和willapp
2012-08-16 00:09:33 735
转载 文档未记录的API之UICalloutView
如果你在iPhone上使用过Google Map,你可能在实战中见过UICalloutView实例。虽然它们的名称如此,但是它们是一种UIControl实例。它们是文档中未记录的,但在UIKit框架中可用。标注视图指向屏幕上的某些内容。它们在使用附加的扩展按钮移动到另一个消息之前,可以显示一个临时消息。下图显示了带有几个标注视图的屏幕,其中有些标注视图显示它们的源(临时)消息,其他标注视图显示
2012-08-16 00:08:06 559
转载 iphone开发中使用nib(xib)文件的内存管理
在使用nib文件做界面开发的过程中,加载nib文件后,由于设置了outlet和delegate,出现了一些未能及时释放的引用和retain循环,最后结果当然可想而知,dealloc没有走到,内存一路高歌走上去了。所以在使用的时候应该需要注意一些地方,及时的释放不必要的引用等官方文档Memory Management Programming Guide中 Memory Management
2012-08-16 00:07:21 948
转载 iphone开源网络编程cocoaasyncsocket
iphone的CFNetwork编程比较艰深。我选择使用AsyncSocket开源库来开发,下面介绍一些简单的使用,并给出我写的一个简单的实现模板,只要添加自己的处理代码就可以使用了。 官方网站:http://code.google.com/p/cocoaasyncsocket/ 一.项目添加ASyncSocket 1.下载ASyncSocket库源码
2012-08-15 23:55:22 747
转载 iphone开发之单元测试SenTestCase
使用xcode开发很长一段时间了,可是并没有使用其中支持的单元测试的功能,所以特别留意了一下使用单元测试的方式。l iPhone从SDK3.0开始直接支持单元测试,可以创建Unit test bundle形式的target。方便了单元测试代码的编写。l 还有一个是用google-toolbox-for-mac中带的iPhone Unit Test 框架,其实此框架也是基于OCUnit库
2012-08-15 23:51:44 824
转载 在iOS4中使用代码块
在iOS4中使用代码块-基础知识 iOS4引入了一个新特性,支持代码块的使用,这将从根本上改变你的编程方式。代码块是对C语言的一个扩展,因此在Objective-C中完全支持。如果你学过Ruby,Python或Lisp编程语言,那么你肯定知道代码块的强大之处。简单的说,你可以通过代码块封装一组代码语句并将其当作一个对象。代码块的使用是一种新的编码风格,可以让你运用自如的使用iOS4中新增AP
2012-08-13 00:18:05 2705
转载 iOS5中 UIViewController新方法的使用
在iOS5中,ViewController中新添加了下面几个方法:addChildViewController: removeFromParentViewController transitionFromViewController:toViewController:duration:options:animations:completion:willMoveToParentV
2012-08-12 23:19:32 755
一个动态链接库(MFC扩展库)及其测试程序的例子(系统托盘图标)
2008-10-16
Libnids-API(中文版)
2008-07-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人