随笔分类 -  iOS

上一页 1 ··· 5 6 7 8 9 10 11 12 下一页
关于IOS的相关
摘要:ASIHTTPRequest对CFNetwork API进行了封装,并且使用起来非常简单,用Objective-C编写,可以很好的应用在Mac OS X系统和iOS平台的应用程序中。ASIHTTPRequest适用于基本的HTTP请求,和基于REST的服务之间的交互。ASIHTTPRequest功能很强大,主要特色如下:l 通过简单的接口,即可完成向服务端提交数据和从服务端获取数据的工作l 下载的数据,可存储到内存中或直接存储到磁盘中l 能上传本地文件到服务端l 可以方便的访问和操作请求和返回的Http头信息l 可以获取到上传或下载的进度信息,为应用程序提供更好的体验l 支持上传或下载队列,并 阅读全文
posted @ 2013-03-11 14:16 yingkong1987 阅读(237) 评论(0) 推荐(1)
摘要:首先,要想在ios项目中使用ASIHttpRequest,必须添加下列框架和类库:ASIHttpRequestCFNetwork.frameworkSystemConfiguration.frameworkMobileCoreServices.frameworkCoreGraphics.frameworklibz.dylib下面是我们今天要完成的任务:下载指定链接的zip压缩文件存放在Documents目录下支持断点续传显示下载进度解压到指定目录那就开始吧,首先我们要创建一个ASINetworkQueue全局队列,队列里可以添加请求,虽然今天只会用到一个请求,但我们迟早会用到队列,不妨现在就开 阅读全文
posted @ 2013-03-11 14:12 yingkong1987 阅读(299) 评论(0) 推荐(0)
摘要:一、键盘风格 UIKit框架支持8种风格键盘。[java]view plaincopytypedefenum{UIKeyboardTypeDefault,//默认键盘:支持所有字符UIKeyboardTypeASCIICapable,//支持ASCII的默认键盘UIKeyboardTypeNumbersAndPunctuation,//标准电话键盘,支持+*#等符号UIKeyboardTypeURL,//URL键盘,有.com按钮;只支持URL字符UIKeyboardTypeNumberPad,//数字键盘UIKeyboardTypePhonePad,//电话键盘UIKeyboardTypeN 阅读全文
posted @ 2013-03-11 14:01 yingkong1987 阅读(534) 评论(0) 推荐(0)
摘要:ASIHTTPRequest对CFNetwork API进行了封装,并且使用起来非常简单,用Objective-C编写,可以很好的应用在Mac OS X系统和iOS平台的应用程序中。ASIHTTPRequest适用于基本的HTTP请求,和基于REST的服务之间的交互。ASIHTTPRequest功能很强大,主要特色如下:l 通过简单的接口,即可完成向服务端提交数据和从服务端获取数据的工作l 下载的数据,可存储到内存中或直接存储到磁盘中l 能上传本地文件到服务端l 可以方便的访问和操作请求和返回的Http头信息l 可以获取到上传或下载的进度信息,为应用程序提供更好的体验l 支持上传或下载队列,并 阅读全文
posted @ 2013-03-11 12:57 yingkong1987 阅读(593) 评论(0) 推荐(0)
摘要:在ASIHTTPRequest中,要显示进度跟踪是很简单的。只需要使用一个UIProgressView控件,并简单地将它设置为request的setUploadProgressDelegate/setDownloadProgressDelegate属性,以即把showAccurateProgress设为YES就可以了。这就需要用到ASIProgressDelegate协议了。对于上传进度而言,需要注意其中的3个方法(还有两个是下载进度相关的),这些方法都是可选的(不需要全部实现):-(void)setProgress:(float)newProgress;-(void)request:(ASI 阅读全文
posted @ 2013-03-11 12:36 yingkong1987 阅读(256) 评论(0) 推荐(0)
摘要:在iOS中我们可以通过NSDateFormatter来设置输出NSDate的格式。相比NSDateFormatter的大名鼎鼎,NSNumberFormatter好像知道的人就不多了。其实通过NSNumberFormatter,同样可以设置NSNumber输出的格式。例如如下代码:NSNumberFormatter*formatter = [[NSNumberFormatteralloc]init];formatter.numberStyle=NSNumberFormatterDecimalStyle;NSString*string = [formatterstringFromNumber:[ 阅读全文
posted @ 2013-03-11 12:27 yingkong1987 阅读(2973) 评论(0) 推荐(0)
摘要:1、三角函数 double sin (double);正弦 double cos (double);余弦 double tan (double);正切 2 、反三角函数 double asin (double); 结果介于[-PI/2, PI/2] double acos (double); 结果介于[0, PI] double atan (double); 反正切(主值), 结果介于[-PI/2, PI/2] double atan2 (double, double); 反正切(整圆值), 结果介于[-PI, PI] 3 、双曲三角函数 double sinh (doub... 阅读全文
posted @ 2013-03-11 12:16 yingkong1987 阅读(935) 评论(0) 推荐(0)
摘要:解析IOS控制台利用GDB命令查看报错堆栈是本文要介绍的内容,在ios开发中,如果提前释放一个指针的内存,在以后还继续使用这个指针,那么程序会立刻crash掉,而且很难有报错信息,我以前都是靠猜测去判断错误的原因,我们应该利用工具去找到错误的地方,然后快速准确的定位到错误地方,及其错误原因,最后进行改进。其实ios控制台,提供这种机制,如果你选择debug模式,在程序crash之后,在控制台输入bt,就可以显示crash堆栈:Programreceivedsignal:“EXC_BAD_ACCESS”. warning:Unabletoreadsymbolsfor/Developer/ios4 阅读全文
posted @ 2013-03-07 18:49 yingkong1987 阅读(606) 评论(0) 推荐(0)
摘要:1.取字符串中的某段字符串[plain] view plaincopyprint?NSString *str=@"12sadfsdf56afsdf";NSLog(@"%@",str);NSString *thrStr = [strstringByReplacingOccurrencesOfString:@"56"withString:@"88"];NSLog(@"%@",thrStr);即把12sadfsdf56afsdf中的56替换为88,替换后字符串为:12sadfsdf88afsdf2.简 阅读全文
posted @ 2013-03-07 00:09 yingkong1987 阅读(319) 评论(0) 推荐(0)
摘要:在代码中调用如下代码:NSURL*url=[NSURL URLWithString:@"prefs:root=WIFI"];[[UIApplication sharedApplication] openURL:url];即可跳转到设置页面的对应项。[font=]About — prefs:root=General&path=AboutAccessibility — prefs:root=General&path=ACCESSIBILITYAirplane Mode On — prefs:root=AIRPLANE_MODEAuto-Lock — prefs: 阅读全文
posted @ 2013-02-14 01:03 yingkong1987 阅读(368) 评论(0) 推荐(0)
摘要:基础书籍Computer Systems: A Programmer’s Perspective这本书是我在读本科时候看的,至今我已经记不清推荐给多少人了。如果说TAOCP太难,不是每个程序员都能读懂的话,哪我觉得这本书绝对每个程序员都应该看。如果作为程序员你不知道什么是”Big Endian”那么你绝对应该阅读这本书。Advanced Programming in the UNIX Environment这本书是我翻看最多的一本手册,这本书对unix编程介绍深入浅出,从OS原理到实际代码,它不仅是教你如何编程,更重要的帮你理解unix如何运作。作为苹果软件开发者,读懂unix也是必要技能。而 阅读全文
posted @ 2013-01-11 14:02 yingkong1987 阅读(201) 评论(0) 推荐(0)
摘要:程序员的收入是广受关注的问题,很多人从业3~5年之后就会遇到这个收入瓶颈。尽管物价不断上涨,程序员尤其是初、中级程序员的收入不升反降。即使上次在某个文章中看到有中国第一程序员之称的某位,月薪也只有3万,尽管这个数字已经很高了,但这个“中国第一”,也只有众多小型软件企业总监级别的收入而已。为什么这么高水平的技术人员在公司中的位置仍然显得与日俱降?本文会分析其中的原因,并依据原因给出相应的建议,为收入遇到瓶颈的程序员找到出路。要理解一个人能赚多少钱,先要理解钱的流转规律。对于程序员,总是认为若自己能力提升了,自己的收入就应该相应提升。不过,请先读一下任正非写给华为员工的邮件中的一段文字:没有责任心 阅读全文
posted @ 2013-01-08 16:12 yingkong1987 阅读(308) 评论(0) 推荐(0)
摘要:开发几个常用的开源类库及下载地址:1.jsonjson编码解码2.GTMBase64 base64编码解码3.TouchXML解析4.SFHFKeychainUtils 安全保存用户密码到keychain中5.MBProgressHUD很棒的一个加载等待特效框架6.ASIHTTPRequest等相关协议封装7.EGORefreshTableHeaderView下拉刷新代码8.AsyncImageView异步加载图片并缓存代码9.类似setting的竖立也分栏程序10.MBProgressHUD——进展指示符库11.Flurry——详尽的使用统计12.CorePlot——2D图形绘图仪13.GD 阅读全文
posted @ 2013-01-06 13:52 yingkong1987 阅读(282) 评论(0) 推荐(0)
摘要:基础篇:NSURL介绍http://blog.csdn.net/ysy441088327/article/details/7416759网页执行js代码1 stringByEvaluatingJavaScriptFromString这个方法是让一切成为可能的关键,有了这个方法,才能对网页进行各种操作。我自己没有做过网页开发,所以对js不熟悉,只用了一些最常用的js,如果非常熟悉的话应该能做更多的事。从网页获取URL:1 - (NSURL*)url2 {3 NSString *urlString = [self stringByEvaluatingJavaScriptFromString:@&q 阅读全文
posted @ 2013-01-05 22:41 yingkong1987 阅读(233) 评论(0) 推荐(0)
摘要:这篇文章要介绍的,是我作为专业程序员这些年来学到的能真正提高我的代码质量和整体工作效率的10件事情。1. 永远不要复制代码不惜任何代价避免重复的代码。如果一个常用的代码片段出现在了程序中的几个不同地方,重构它,把它放到一个自己的函数里。重复的代码会导致你的同事在读你的代码时产生困惑。而重复的代码如果在一个地方修改,在另外一个地方忘记修改,就会产生到处是bug,它还会使你的代码体积变得臃肿。现代的编程语言提供了很好的方法来解决这些问题,例如,下面这个问题在以前很难解决,而如今使用lambdas却很好实现:现在我们重构含有部分相同代码的函数,用delegate模式重写它们:2. 留意你开始分心的时 阅读全文
posted @ 2012-12-28 12:25 yingkong1987 阅读(177) 评论(0) 推荐(0)
摘要:1.判断邮箱格式是否正确的代码//利用正则表达式验证-(BOOL)isValidateEmail:(NSString *)email{NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES%@",emailRegex];return [emailTest evaluateWithObject:email];}2.图片压 阅读全文
posted @ 2012-12-20 10:14 yingkong1987 阅读(282) 评论(0) 推荐(0)
摘要:项目开发中,经常遇到一个问题。每次辛苦的发布版本给测试人员测试后,收获一推Bug,面对这些问题,有些问题还是很容易就找到的,那些很难重现的问题就让人无语了。如果不是在模拟器上,又或者我们的设备没有连接到PC上,那么如何调试我们的程序呢?如果应用已经发不到AppStore了,用户在使用过程中出现了问题,我们当然希望能够感知到这个问题,并在更新下个版本时修改和完善我们的应用。 这就引出一个需求:捕获应用使用时出现的异常,提交至服务器或者开发者的邮箱。 废话不多说,直接上代码。 1、用于处理未被try...catch...捕获的异常 void UncaughtExceptionHandler... 阅读全文
posted @ 2012-12-20 00:50 yingkong1987 阅读(259) 评论(0) 推荐(0)
摘要:好的交互设计的评判标准之一是“别让我等”,但互联网产品总是受制于实际的网络问题。移动端产品则更为明显,2G、3G环境下加载不够给力,wifi环境也未必每次都是那么顺利。因此“别让我等”更像是种奢望,我们倒应该思考的是“如何优雅而不令人烦躁的等”。与之最直接关联的就是app加载页面的设计。一个app加载页面,大致分为3类:(一)启动加载页启动加载是我们打开app的第一眼所看到界面。会给用户留下该产品的第一印象。通常启动加载页设计有几种:1、固定的加载页Logo、slogan、产品主色、版本号、出品团队,这是初级启动页面的基本构成元素,设计者的目的就是最直接快速的向用户传达产品形象,这也是让用户最 阅读全文
posted @ 2012-12-19 13:43 yingkong1987 阅读(276) 评论(0) 推荐(0)
摘要:如何只舍不入。比如 float price =0.126,怎么样才能得到0.12?当然,通过字符串截取的办法肯定也能达到相同的效果。但是就是这么一个简单的问题要通过一些判断和截取才能获得结果,总感觉有点笨拙。下面先给出该问题的解决办法:-(NSString *)notRounding:(float)price afterPoint:(int)position{ NSDecimalNumberHandler* roundingBehavior = [NSDecimalNumberHandler decimalNumberHandlerWithRoundingMode:NSRoundDown s. 阅读全文
posted @ 2012-12-18 12:51 yingkong1987 阅读(8417) 评论(8) 推荐(0)
摘要:我们知道iOS开启后台任务后可以获得最多600秒的执行时间,而一些需要在后台下载或者与服务器保持连接的App是如何突破600秒的限制的呢?像网易公开课就可以在后台持续下载,优酷也可以在后台持续缓存,这是怎么做到的呢?一般来说,要实现iOS长时间后台运行,需要声明VOIP、Audio或GPS。Audiosession实现方法很简单,就是在后台一直播放一个无声的音乐文件,这样就相当于声明了Audio,就可以轻松突破600秒的限制了。通过播放“静默”音让程序在后台执行的做法(即在audiounit回调函数中使用kAudioUnitRenderAction_OutputIsSilence标志位),虽然 阅读全文
posted @ 2012-12-12 21:19 yingkong1987 阅读(551) 评论(0) 推荐(0)

上一页 1 ··· 5 6 7 8 9 10 11 12 下一页