IOS
文章平均质量分 74
SlinZhu
这个作者很懒,什么都没留下…
展开
-
UITableView多选删除,类似mail中的多选删除效果
第一步,实现-(UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editing转载 2012-08-06 16:27:22 · 319 阅读 · 0 评论 -
VIEW切换时的翻页效果
引入 #import 公有方法实现[UIView beginAnimations:@"animationID"context:nil];[UIView setAnimationDuration:1.0f];[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];[UIView setAn转载 2012-08-06 16:28:13 · 674 阅读 · 0 评论 -
iphone拨号api调用后返回自己的应用
打电话可以用openURL:这个API, 如:[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://10086"]];但是当电话结束后,返回的是系统的拨打电话界面,如何才能返回自己的应用呢?这儿有两种方法与大家分享。 第一种是用UIWebView加载电话,这种是合法的,可以上App Store原创 2012-08-06 16:28:30 · 2177 阅读 · 0 评论 -
各UI控件尺寸
转载 2012-08-06 16:28:50 · 448 阅读 · 0 评论 -
App审核关键点
磨刀不误砍柴工。作为手机应用开发者,你需要向应用商店提交应用审核,迅速通过审核可以让你抢占先机。对苹果iOS应用开发者来说尤其如此。苹果应用商店的审核近乎吹毛求疵,下面这些清单可以让你知道苹果会在哪些地方找茬。首先,你的应用程序:不能导致手机故障(比如崩溃或屏幕问题)长时间/过度使用之后反应仍然很快应用内的所有价格信息中不能用固定值代替可变变量不要使用任何S转载 2012-08-06 16:29:06 · 417 阅读 · 0 评论 -
ASIHTTPRequest缓存
大文件断点续传0.94以后支持大文件的断点下载,只需要设置:[ request setAllowResumeForFileDownloads:YES ];[ request setDownloadDestinationPath:downloadPath ];就可以了。ASIHTTPRequest会自动保存访问过的URL信息,并备之后用。在以下几个场景非常有用:1,当没有网络转载 2012-08-06 16:29:22 · 371 阅读 · 0 评论 -
邮箱验证
方法一:@interface NSString (ValidEmailAddition) - (BOOL)isValidEmail; @end @implementation NSString (ValidEmailAddition) - (BOOL)isValidEmail {转载 2012-08-06 16:30:31 · 437 阅读 · 0 评论 -
ASIHTTPRequest 详解, http 请求终结者
目录目录发起一个同步请求创建一个异步请求队列请求请求队列上下文ASINetworkQueues, 它的delegate提供更为丰富的功能取消异步请求安全的内存回收建议向服务器端上传数据下载文件获取响应信息获取请求进度cookie的支持大文件断点续传ASIDownloadCache 设置下载缓存多种的缓存并存缓存转载 2012-08-06 16:30:34 · 353 阅读 · 0 评论 -
渐隐渐现效果代码
- (void) touchesBegan:(NSSet*)touches withEvent:(UIEvent*)event{// only respond to mouse down eventsUITouch *touch = [touches anyObject];if ([touchphase] !=UITouchPhaseBegan)return;isV转载 2012-07-24 18:40:47 · 696 阅读 · 0 评论 -
旋转动画 uiview animation rotate
#import [UIViewbeginAnimations:@"animationID"context:nil];[UIViewsetAnimationDuration:0.5f];[UIViewsetAnimationCurve:UIViewAnimationCurveEaseInOut];[UIViewsetAnimationRepeatAutoreverses:NO原创 2012-07-24 18:45:50 · 855 阅读 · 0 评论 -
plist文件,Property List 文件
plist文件,Property List 文件,一般都是xml文件格式,用于描述应用软件主要包括如下:关键字类型是否必须摘要CFBundleDevelopmentRegionStringNo该束的地区。通常对应于作者的母语。CFBundleDisplayNameStringNo本地化的束名。CFBun转载 2012-07-24 19:42:22 · 493 阅读 · 0 评论 -
修改 ios 状态栏
UIWindow中有相关层级设定的如下设置[cpp] view plaincopytypedef CGFloat UIWindowLevel; const UIWindowLevel UIWindowLevelNormal; // 0.0 const UIWindowLevel UIWindowLevelAlert; // 2000.0转载 2012-07-24 19:49:36 · 1395 阅读 · 0 评论 -
对NString进行nil,null 的判断
不要对nsstring length == 0 并不了事nsstring 为nil ,例如nsstring *tmp =@""; 在很多网络请求的应用中 对nil进行判断是十分必要的 不然程序很容易莫名其妙的崩溃 下面附上 正确代码+ (BOOL ) stringIsEmpty:(NSString *) aString { if ((NSNull *) aString == [N原创 2012-07-24 19:57:31 · 2029 阅读 · 0 评论 -
NSLog输出类型的标示符
• %@ 对象• %d, %i 整数• %u 无符整形• %f 浮点/双字• %x, %X 二进制整数• %o 八进制整数• %zu size_t• %p 指针• %e 浮点/双字 (科学计算)•原创 2012-07-24 19:59:26 · 527 阅读 · 0 评论 -
CATransform3DMakeRotation 旋转,翻转
// Create basic animation to rotate around the Y and Z axes// CABasicAnimation *transformAnimation = [CABasicAnimation animationWithKeyPath:@"transform"];// transformAnimation.fromValue = [NSValue转载 2012-07-24 18:38:40 · 781 阅读 · 0 评论 -
NSDateFormatter NSDateComponents iphone 时间格式详解
NSDateFormatter调整时间格式的代码在开发iOS程序时,有时候需要将时间格式调整成自己希望的格式,这个时候我们可以用NSDateFormatter类来处理。例如://实例化一个NSDateFormatter对象NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];//设定时间格式,这里转载 2012-07-24 18:39:57 · 427 阅读 · 0 评论 -
[iOS] iphone检测耳机插入/拔出
开发过程中录音和播放这块碰到了一些问题,麻烦的主要有三个:检测是否有声音输入设备当有多个声音输出设备时,指定声音输出设备检测耳机的插入和拔出第一个问题,对于iTouch和iPad等本身不带麦克风的设备,需要检查是否插入了带录音功能的耳机;对于iphone,由于其本身已近自带麦克风,所以相对容易。第二个问题,当在本身带有外放的设备上插入耳机等输出设备时,就出现了多个输出设转载 2012-07-24 18:47:13 · 1004 阅读 · 0 评论 -
去除Array中重复对象
NSArray *copy = [array copy];NSInteger index = [copy count] -1; for (id object in [copy reverseObjectEnumerator]) { if ([array indexOfObject:objectinRange:NSMakeRange(0, index)]原创 2012-07-24 19:55:17 · 541 阅读 · 0 评论 -
ios 通讯录 通过电话号码 查询姓名
#pragma mark - 检索是否通讯录里有此号码-(NSString *)getNameBytel:(NSString *)telstr{NSMutableArray* personArray = [[[NSMutableArrayalloc]init] autorelease]; //打开电话本数据库 ABAddressBookRef addressR转载 2012-07-24 18:35:22 · 963 阅读 · 0 评论 -
IOS 定位服务
IOS中的core location提供了定位功能,能定位装置的当前坐标,同时能得到装置移动信息。因为对定位装置的轮询是很耗电的,所以最好只在非常必要的前提下启动。其中,最重要的类是CLLocationManager,定位管理。其定位有3种方式:1,GPS,最精确的定位方式,貌似iphone1是不支持的。2,蜂窝基站三角定位,这种定位在信号基站比较秘籍的城市比较准确转载 2012-07-24 18:48:25 · 533 阅读 · 0 评论 -
RunLoop的原理和应用
Run loops是线程的基础架构部分。一个run loop就是一个事件处理循环,用来不停的调配工作以及处理输入事件。使用run loop的目的是使你的线程在有工作的时候工作,没有的时候休眠。Run loop的管理并不完全是自动的。你仍必须设计你的线程代码以在适当的时候启动run loop并正确响应输入事件。Cocoa和CoreFundation都提供了run loop对象方便配置和管理线程的转载 2012-07-24 18:50:09 · 693 阅读 · 0 评论 -
iPhone在scrollview中双击定点放大的代码
- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(UIView *)view atScale:(float)scale 双击放大是 iPhone 的一个基本操作,第三方程序里引入这一功能的话,主要是在 scrollview 呈现一张图片或者 PDF 页面时,双击可以放大,主要代码如下 {转载 2012-07-24 19:48:26 · 647 阅读 · 0 评论 -
创建自定义的释放池 管理内存
有的时候 常会碰到一些 autorelease的对象 ,可以用自动释放池用来自动释放任何需要自动释放的对象 -(void)releasefunciton{ for(NSUInter n = 0 ;n { NSAutoreleasePool * pool = [[NSAutoreleasePool allo转载 2012-07-24 19:54:32 · 1064 阅读 · 0 评论 -
UITableView实现下拉刷新的小功能
一、找到你的 UITableView / UITableViewController 的 .h 文件,结合以下代码,添加相应的元素:#import "EGORefreshTableHeaderView.h"@interface RootViewController : UITableViewController {EGORefreshTableHeaderView转载 2012-08-09 11:05:26 · 506 阅读 · 0 评论 -
IOS4+ 发短信
OS4.0新加入了MFMessageComposeViewController和MFMessageComposeViewControllerDelegate,提供了发送短信的接口,可以像发送邮件那样不用跳出程序来发送短信. 介绍可参阅Message UIFramework Reference一些笔记:MFMessageComposeViewController提供了操作界面转载 2012-07-24 18:49:04 · 954 阅读 · 0 评论 -
NSLocalNotification的用法示例
1、增加一个本地推送//设置20秒之后 NSDate *date = [NSDatedateWithTimeIntervalSinceNow:20]; //chuagjian一个本地推送 UILocalNotification *noti = [[[UILocalNotificationalloc] init]autorelease]; if原创 2012-07-24 19:58:40 · 6062 阅读 · 0 评论 -
非AppStore应用检查更新教程(附Demo)
非AppStore应用更新检查的教程鉴于近来发现很多人对于应用更新这一方面的了解比较少,所以就发个教程供大家参考。App很简单,运行以后,只有一个Check按钮:按下按钮,这个App会从服务器上检查更新数据,并且显示出新版本和新特性,且指引用户跳转到下载界面修改版本号到最新版本,再次运行,就会看到最新版本的提示看起来很简单的App,先大致说一下思转载 2012-08-09 15:57:49 · 1776 阅读 · 0 评论 -
iPhone 添加状态栏图标及自定义状态栏
用过Reeder的应该都会发现,在进行同步时,右上角会出现一个自定义的图标。而在点击它时,就会向左扩张覆盖住原状态栏,并显示同步状态。这个设计非常巧妙,因为传统的设计在显示状态时,往往会占用掉几十像素;而在阅读时,用户非常希望主要内容能占据更多的空间。那么这个设计是怎么实现的呢?下面就来模拟一下。首先要说明的是,Apple并没有开放状态栏的API,所以想要改动它的话,就只能用私有A原创 2012-08-10 16:28:28 · 2975 阅读 · 0 评论 -
iphone守护进程和前台进程之间的通信-前台应用发信息给后台的守护进程
当我们创建基于mobilesubstrate的应用时,通常都是一些前后台程序,典型的比如苹果皮等,这个需要前台程序法信息到后台进程中,这里有两种方式一种是基于文件的模式也就是在后台程序中设定一个定时器,定时读取用户交互信息的文件,这样实现的通信机制,虽然也解决了问题,但是,缺陷是需要一直跑一个定时器来查询前台是否传递信息过来了还有一种是使用CFMessagePortRef典型的如下转载 2012-08-10 17:13:50 · 1682 阅读 · 0 评论 -
自定义键盘
有一种思路叫寄生...我相信是懒人推动了世界的发展,既然iphone有了自己的软件盘,我们什么还要自己实现其功能呢。so,只要寄生在上面就行了。感谢alan转载的文章给的灵感。http://www.cocoachina.com/bbs/read.php?tid-3999.html思路:1.用静态方法找到应用程序当前view(window)中的UIKeyboa转载 2012-08-10 17:14:54 · 434 阅读 · 0 评论 -
UITableViewCell高亮时其子视图的状态修改
为了进行UI自定义,修改了UITableViewCell的accessoryView,如下UIButton * accessoryDetailDisclosureButton = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 30, 30)];[accessoryDetailDisclosureButton setImage:[UI转载 2012-08-15 15:44:28 · 597 阅读 · 0 评论 -
iOS应用程序状态切换相关
一、iOS应用程序状态机一共有五种状态:1. Not running:应用还没有启动,或者应用正在运行但是途中被系统停止。2. Inactive:当前应用正在前台运行,但是并不接收事件(当前或许正在执行其它代码)。一般每当应用要从一个状态切换到另一个不同的状态时,中途过渡会短暂停留在此状态。唯一在此状态停留时间比较长的情况是:当用户锁屏时,或者系统提示用户去响应某些(诸如电话来电、有未读短转载 2012-08-15 15:37:42 · 473 阅读 · 0 评论 -
UIApplication委托信息(多任务)
一般的应用在进入后台的时候可以获取一定时间来运行相关任务,也就是说可以在后台运行一小段时间。还有三种类型的可以运行在后台,1.音乐 2.location 3.voip大多数应用程序进入后台状态不久后转入暂停状态。在这种状态下,应用程序不执行任何代码,并有可能在任意时候从内存中删除。应用程序提供特定的服务,用户可以请求后台执行时间,以提供这些服务。判断是否支持多线程UIDev转载 2012-08-15 15:42:43 · 322 阅读 · 0 评论 -
ios监听app音量的变化
方法1: 在applicationDidFinishLaunching函数里添加 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(volumeChanged:)转载 2012-08-15 19:42:40 · 5217 阅读 · 0 评论 -
ios监听静音键和音量键事件
判断是否静音:view plaincopyto clipboardprint?- (BOOL)isMuted { CFStringRef route; UInt32 routeSize = sizeof(CFStringRef); OSStatus status = AudioSessionGetPropert原创 2012-08-15 19:45:22 · 14370 阅读 · 4 评论 -
iOS开发之使用pjsip开发VoIP应用程序
最近项目中要用到VoIP,VoIP全称Voice over Internet Protocol,即网络电话,生活中经常用到,例如Skype。能用到iPhone上面的VoIP库不多,最开始准备使用Lipphone,但其编译实在太慢,编译了N次也没有成功,最后放弃啦。后来尝试使用pjsip,居然成功了,简单的记录一下过程,其实是照着官网操作的:)一、环境需求:iPhone应用推荐使用S转载 2012-08-17 15:19:15 · 3767 阅读 · 1 评论 -
ios播放音频
在 iPhone 应用或者是游戏的开发过程中,对声音的支持是必不可少的。在我做过的几个应用中,每个都涉及到音效,所以在这里做个简单的归纳,很多都是引用自《iPhone Application Programming Guide》(需要有 Apple ID 才能打开链接),加了一些实际使用的经验。iPhone OS 主要提供以下了几种播放音频的方法:System Sound Services转载 2012-08-17 16:59:11 · 876 阅读 · 0 评论 -
ios开发-剪切板
概述: 在iOS中,可以使用剪贴板实现应用程序之中以及应用程序之间实现数据的共享。比如你可以从iPhone QQ复制一个url,然后粘贴到safari浏览器中查看这个链接的内容。一、在iOS中下面三个控件,自身就有复制-粘贴的功能:1、UITextView2、UITextField3、UIWebView二、UIKit framework提供了几个类和协议方便我们在自己转载 2012-08-22 15:28:22 · 1621 阅读 · 0 评论 -
NSString的属性相关
1. NSData 与 NSStringNSData-> NSStringNSString *aString = [[NSString alloc] initWithData:adataencoding:NSUTF8StringEncoding];NSString->NSDataNSString *aString = @"1234abcd";NSData *aData =原创 2012-08-27 11:09:28 · 1282 阅读 · 0 评论 -
IOS开发网络篇之──ASIHTTPRequest下载示例(支持断点续传)
在工程中,我们会常常遇到需要下载的程序,比如下载在线音乐、下载图片等等,今天我将介绍一下利用ASIHTTPRequest的下载示例,支持断点续传,利用ASIHTTPRequest下载以及断点续传的原理在我的博客:http://blog.csdn.net/pjk1129/article/details/6575588中有具体的介绍,今天重点介绍如何实现,废话少说,开始正文: 一、创建网络请转载 2012-09-10 11:13:52 · 269 阅读 · 0 评论