IOS
文章平均质量分 69
itianyi
这个作者很懒,什么都没留下…
展开
-
ios6 objective-c新特性
2007年的时候,Objective-C在TIOBE编程语言排名里还排在可怜的第45位,而随着移动互联网的迅速发展和iPhone,iPad等iOS设备的广阔市场前景,Objective-C也迅速崛起,走进了开发者的视野。在最近的TIOBE排名中,Objective-C达到了惊人的第4名,可以说已经成为当今世界上一门非常重要的编程语言。 而Objective-C现在主要是由Apple在负责维护了。一原创 2013-01-05 09:23:18 · 660 阅读 · 0 评论 -
ios开发笔记1
没有 retain,有可能过早释放;没有 release,有可能内存泄漏原创 2013-01-08 08:57:40 · 490 阅读 · 0 评论 -
iOS中对文件的操作
因为应用是在沙箱(sandbox)中的,在文件读写权限上受到限制,只能在几个目录下读写文件:Documents:应用中用户数据可以放在这里,iTunes备份和恢复的时候会包括此目录tmp:存放临时文件,iTunes不会备份和恢复此目录,此目录下文件可能会在应用退出后删除Library/Caches:存放缓存文件,iTunes不会备份此目录,此目录下文件不会在应用退出删除在Docum转载 2013-01-23 09:03:25 · 663 阅读 · 0 评论 -
在应用程序中调用safari打开网页
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://9016098909891"]]; // 打电话 [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.google.com"]]; //调原创 2013-01-23 18:56:15 · 3513 阅读 · 0 评论 -
iOS学习之 plist文件的读写
在做iOS开发时,经常用到到plist文件, 那plist文件是什么呢? 它全名是:Property List,属性列表文件,它是一种用来存储串行化后的对象的文件。属性列表文件的扩展名为.plist ,因此通常被称为 plist文件。文件是xml格式的。Plist文件通常用于储存用户设置,也可以用于存储捆绑的信息我们创建一个项目来学习plist文件的读写。转载 2013-01-23 09:04:26 · 756 阅读 · 0 评论 -
NSString截取字符串
1.定义一个字符串a, 截取a 的某一个部分,复制给b, b必须是int型 NSString *a = @"1.2.30"; int b= [[a substringWithRange:NSMakeRange(4,2)] intValue]; NSLog(@"a:%@ \n",a ); NSLog(@"b:%d",b ); Ou原创 2013-01-07 09:16:33 · 503 阅读 · 0 评论 -
IOS 6 自动布局 入门
来自Ray:恭喜各位!你们已经通过宣传ios feast提前解锁了第一个有关IOS6的教程。目前这份教程只是我们的新书iOS 6 By Tutorials里面某个章节的精简版。这份教程由同样著作过iOS Apprentice Series的Matthijs Hollemans 完成,开始体验吧!这份教程由IOS 教程小组的组员Matthijs Hollemans发布,Mat转载 2013-01-23 18:57:42 · 16883 阅读 · 1 评论 -
NSNotificationCenter消息通信机制介绍(KVO)
NSNotificationCenter消息通信机制介绍(KVO)作用:NSNotificationCenter是专门供程序中不同类间的消息通信而设置的.注册通知:即要在什么地方接受消息 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(mytest:转载 2013-01-22 23:04:38 · 515 阅读 · 0 评论 -
NSNotificationCenter 的使用详解
通常我们在 iOS 中发生什么事件时该做什么是由 Delegate 实现的,例如 View 加载完后会触发 viewDidLoad。 Apple 还为我们提供了另一种通知响应方式,那就是 NSNotification,系统中(UIKeyboardDidShowNotification 等) 以及某些第三方组件(例如 ASIHTTPRequest 的 kReachabilityChangedNo转载 2013-01-22 23:06:41 · 747 阅读 · 0 评论 -
objective c 字符串各种处理
关于字符串的各种操作,总结一下以便以后复习查找。内容简要:1、创建常量字符串。 2、创建空字符串,给予赋值。3、在以上方法中,提升速度:initWithString方法4、用标准c创建字符串:initWithCString方法。5、创建格式化字符串:占位符(由一个%加一个字符组成)6、创建临时字符串。7、判断字原创 2013-01-15 14:58:57 · 454 阅读 · 0 评论 -
NSNotificationCenter 的详细说明
1. 定义一个方法 -(void) update{ } 2. 对象注册,并关连消息 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(update) name:@"update" object:nil] 3. 在要发出通转载 2013-01-22 23:04:02 · 643 阅读 · 0 评论 -
iphone编程--详解ios文件系统文件目录读写操作
iPhone文件读写系统操作教程是本文要介绍的内容,对于一个运行在iPhone得app,它只能访问自己根目录下得一些文件(所谓sandbox).一个app发布到iPhone上后,它得目录结构如下: 1、其中获取 app root 可以用 NSHomeDirectory() 访问到; 2、Documents 目录就是我们可以用来写入并保存文件得地方,一般可通过以下代码获取,转载 2013-01-23 09:05:08 · 6845 阅读 · 0 评论 -
ios 字符串的比较
ios 字符串的比较 (2012-07-18 17:25:06)转载▼标签: 杂谈 // 声明一个NSString NSString *str; // 使用stringWithFormat生成一格式化字符串 str = [NSString stringWithFormat:@"This i转载 2013-01-23 18:50:43 · 3784 阅读 · 0 评论 -
iOS 6 编程 - 自动布局(Auto Layout)系列文章
iOS 6 在应用程序用户界面开发中,引入了自动布局(Auto Layout)概念。自动布局使用约束(Constraint)在用户界面描述各类视图的位置、行为和关系。在Xcode 4.5中,我们可以使用Interface Builder,或者可视化格式语言(Visual Format Language),或者标准的SDK API调用(NSLayoutConstraint类)等等三种方式来创原创 2013-01-23 18:58:50 · 1529 阅读 · 0 评论 -
Xcode4.5常用快捷键
在网上找了些xcode快捷键,发现在xcode4.5里面大部分都用不了了。总结一些自己经常会用到的快捷键option(⌥)+双击: 对选中的内容在文档中查找⌥ ← → : 跳到下一个单词处⌘L : Goto(行号)⌃⌘← → : 前进,后退 ⌘F : 当前文件搜索⇧⌘F : 全局搜索⌘G: 在当前文件中查找下一个原创 2013-01-09 11:36:54 · 849 阅读 · 0 评论 -
UIImageView响应点击事件
给UIImageView添加图片,然后点击图片做出相应的响应。主要就是设置以下方法:方法一 :找这个event,跟响应鼠标事件是类似的 [cpp] view plaincopyfirst,set the UIImageView userInteractionEnabled = YES; second:- (void)touchesBe原创 2013-01-24 09:10:01 · 4053 阅读 · 0 评论 -
创建视图并绘制简单图形
绘制一个图形,首先我们肯定需要一个视图view,在iOS中是UIView,下面用两种方式介绍如何在iphone上显示视图;首先创建一个项目:(Window-based Application)然后新建一个自定义的GameView类,继承UIView类;Ok,除了继承UIVIew,其他什么都不用修改和改动,下面介绍显示视图的两种方式,第一种方式: 利用转载 2013-01-10 14:30:30 · 506 阅读 · 0 评论 -
iOS开发空字符串判断
咱们程序中经常要用到对字符串的空值判断,无奈iOS自身没有提供这样的功能(如哪位大侠发现有的话,可以告诉我,不甚感激)。言归正传,那么咱就只有自己实现了,Google了一下好几个页面都是同一个人的解决办法,不知道谁是原创了,内容见如下链接: http://woooh.com/archives/384.html该方法未解决字符串内容均是空格的问题,对此方法进行补充,仅供参考:原创 2013-01-24 11:35:51 · 2419 阅读 · 0 评论 -
Instruments工具的使用
最近常使用Instruments这个工具,我发现它对追踪游戏中的内存泄露非常有帮助。自从发现Instruments如此有用后,我就觉得写一篇文章介绍如何使用它来追踪内存泄露对其他人也会有帮助。什么是内存泄露?我为什么要关心内存泄露?…此段省略…访问维基百科可以获得更多关于内存泄露的信息。我如何知道内存泄露了?一些内存泄露可以很容易地通过阅读代码来发现,另一些就要转载 2013-01-15 14:56:54 · 660 阅读 · 0 评论 -
Objective-C 字符串与数值互相转换
Convert NSString to int1NSString *aNumberString = @"123";2int i = [aNumberString intValue]; Convert int to NSString1int aNumber = 123;原创 2013-01-15 14:47:26 · 604 阅读 · 0 评论 -
Iphone开发-NSdata 与 NSString,Byte数组,UIImage 的相互转换
1. NSData 与 NSStringNSData-> NSStringNSString *aString = [[NSString alloc] initWithData:adataencoding:NSUTF8StringEncoding]; NSString->NSDataNSString *aString = @"1234abcd";NSD原创 2013-01-15 19:08:21 · 560 阅读 · 0 评论 -
报错:Collection <__NSCFDictionary: 0xc425570> was mutated while being enumerated.
错误:Terminating app due to uncaught exception 'NSGenericException', reason: '*** Collection was mutated while being enumerated.因为我在枚举menuList可变数组的时候,给menuList添加元素,那这个数组的大小发生了变化,不知道枚举多少次了。一般2种情况会原创 2013-01-16 18:24:47 · 8039 阅读 · 0 评论 -
UITabBarController的使用总结
http://blog.csdn.net/linzhu0831/article/details/7220135做了这么长时间的ios开发了,最基本的UITabBarController和UINavigationController都用了好长时间了,总是改现成的代码,或者各种自定义控件的修改,用的都有些混乱了,呵呵。还是自己做个demo再复习一下吧,记录下来以备后续翻查。一、UI转载 2013-01-18 15:11:26 · 811 阅读 · 0 评论 -
xcode4利用Interface Builder布局时如何调整不同控件之间的叠放次序
分类: iOS2012-06-24 09:44 930人阅读 评论(0) 收藏 举报 xcode4中集成的Interface Builder可以非常方便的帮助我们实现界面的布局,然而该工具并没有提供一个直观的修改不同控件之间叠放次序的操作选项。如下图所示,首先在在View中添加一个UIButton,然后添加一个UIImageView。原创 2013-02-04 17:41:15 · 1581 阅读 · 0 评论 -
苹果 开发者账号区别
苹果 开发者账号区别苹果 开发者账号如下: 99美金个人用户99美金团队:审核多了企业资质认证,可以多开发者共享.(如何共享?)这个测试的时候如果有多个人的话,可以拆分多个子账户出来测试,对于测试方便点。也就是说一个AppleID对应于多个Devices ID。 299美金企业用户:面向拥有500雇员以上的公司,开发专用的企业内部使用的app。这原创 2013-02-06 12:48:54 · 2192 阅读 · 0 评论 -
iOS-NSDate 相差 8 小时
NSDate存储的是世界标准时(UTC),输出时需要根据时区转换为本地时间好像是从ios4.1开始[NSDate date];获取的是GMT时间,这个时间和北京时间相差8个小时,以下代码可以解决这个问题//方法一- (void)tDate{ NSDate *date = [NSDatedate]; NSTime转载 2013-01-22 16:57:25 · 685 阅读 · 0 评论 -
IOS Number 处理
1 小结:1)int-->NSNumber:numberWithInt2)NSNumber-->nsinteger:integerValue3)string -->double:initWithString4)CGFloat --> dobule:initWithFloat,decimalobj doubleValue5)使用NSInteger,因为这样就不原创 2013-01-22 17:14:05 · 7220 阅读 · 0 评论 -
Objective-C精确的货币计算 NSDecimalNumber
在iOS开发中,和货币价格计算相关的,需要注意计算精度的问题。即使只是两位小数,也会出现误差。使用float类型运算,是完全不够的。经过一番测试,最后选择使用系统提供的API的NSDecimalNumber来进行更好的解决。作为一个对外的库,鉴于版本延续,我们保留对外的flaot的类型,不改变接口,选择进行内部适配。以下是一些基本的测试,原始数据float a =转载 2013-01-22 17:11:31 · 3600 阅读 · 0 评论 -
xcode编程中iphone的文件读写
对于一个运行在iPhone得app,它只能访问自己根目录下得一些文件(所谓sandbox).一个app发布到iPhone上后,它得目录结构如下:1、其中得 app root 可以用 NSHomeDirectory() 访问到;2、Documents 目录就是我们可以用来写入并保存文件得地方,一般可通过:NSArray *paths = NSSearchPathForDi原创 2013-01-22 18:55:12 · 1377 阅读 · 0 评论 -
网络及多任务
原文:苹果参考库“Network and Multitasking”多任务是iOS4的关键特性。多任务允许你的应用在后台运行及挂起。对系统来说这是好事,但对你的应用来说会严重干扰其网络任务的执行。本文解释了在网络应用中如何处理好多任务。本文大致由以下部分构成:介绍基础监听 Socket数据 Socket高级 APIs实现细节小翻译 2013-02-17 13:56:29 · 546 阅读 · 0 评论 -
使用KeyBoardUtil处理软键盘的弹出
iPhone的软键盘为216像素高,程序员不得不在软键盘弹出时想办法调整窗口视图,避免输入控件被弹出的软键盘所遮挡。iPhone程序员普遍采用注册软键盘事件的观察者对象来对付这个问题。当软键盘弹出时,窗体的View被上移,当软键盘隐藏时,窗体的View恢复原来位置,这样就避免了输入控件被遮挡。KeyBoardUtil是我写的一个类,正是使用了上述原理,但进行了一些封装,便于程序员使转载 2013-02-17 11:34:34 · 615 阅读 · 0 评论 -
xcode工作区间workspace的使用
问:在xcode已经打开一个工程项目后,如何导入另一个工程项目?也就是说打开xcode界面运行过一个项目后如何再导入另一个项目?答:1,你这个两个项目会相互引用吗?如果不引用的话,你可以建立一个工作区,导入这两个工程。你先新建一个工作区-》new workspace,然后在这个工作区中把这两个工程都放在你新建的这个工作区中就可以了。以后就直接打开这个工作区,这个工作区中的项目就都打开了。 2,原创 2013-02-18 15:12:01 · 23670 阅读 · 0 评论 -
深刻理解属性、getter及setter
原文:http://iphonedevsdk.com/forum/iphone-sdk-tutorials/7295-getters-setters-and-properties-for-the-newbie.html 对于有Mac开发经验的iPhone开发者,可能对O-C的注解“@property”已经习以为常了。但对于从其他开发平台(Java或者Symbian)迁移过来的iPhone开翻译 2013-02-19 10:03:07 · 749 阅读 · 0 评论 -
总结:两个页面切换并传值
怎么样实现两个页面切换并传 值 ?两 个页面切换我会,并且这个很简单了。。但发现不能传值,为什么?谢谢啦~1,在init函数中可以加个参数。Initwithxxxx2,委托3,通知4,单例 代理 属性 单列 通知 传值都行的啊对于不同的viewcontroller之间数据的共享和处理,我总结有下面几种方式1)采用代理模式 子viewcon原创 2013-02-18 17:39:35 · 2895 阅读 · 0 评论 -
iOS单例模式的实现
单例模式的意思就是只有一个实例。单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。1.单例模式的要点: 显然单例模式的要点有三个;一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。2.单例模式的优点: 1.实例控制:Singleton 会阻止其他对象实例化其自己的 S原创 2013-02-19 10:24:21 · 1587 阅读 · 0 评论 -
iOS/Android系统多任务浅析
iOS/Android多任务浅析多任务,伪多任务。iOS与Aandroid操作系统的争论一直不休。双方的支持者都不甘示弱,都在谈,可谁又都谈不明白。说 到多任务,我们就不得不谈Pushmail。这是一个很经典的(伪)多任务,黑莓靠这个一度称霸北美市场。开启Pushmail的黑莓手机不是靠后台的实 时进程,而是通过消息提醒,类似现在的信息推送。这样的做法可以极大的减少电量的消耗,而那原创 2013-02-18 11:01:52 · 880 阅读 · 0 评论 -
KVO/KVC
KVO(NSKeyValueObserving 的简称)、KVC(NSKeyValueCoding 的简称)在很多时候接触到很多地方都有对 KVC,KVO 的描述,但是都是一笔带过。只知道这是Object-C提供的一个不错的机制,可以很好的减少代码。首先我们先了解下 KVO 的机制,KVO:当指定的对象的属性被修改了,允许对象接收到通知的机制。每当在类中定义一个监听如: [转载 2013-02-19 10:00:23 · 826 阅读 · 0 评论 -
UINavigationItem表示UINavigationBar中的控件
一般一个程序中有一个UIWindow,一个UINavigationController,一个根UIViewController,多个子UIViewController。UIWindow是整个可视界面的容器,里面放置我们看到的UIView。UIView负责处理屏幕上一个矩形区域的绘制,UIView中还可包含子UIView。UIWindow是UIView类的扩展,可以看作是整个屏幕的根原创 2013-02-20 14:11:58 · 7032 阅读 · 1 评论 -
ios:设置视图背景图片的方法
1. 使用一个UIImageView实例做子视图,并且放最后面UIImageView *customBackgournd = [UIImageView alloc] initWithImage:[UIImage imageNamed:@"background.jpg"]];self.background = customBackground;[customBackground rele原创 2013-02-20 16:03:30 · 18913 阅读 · 3 评论 -
画面跳转各方法调用的时机-init、viewDidLoad、viewWillAppear、viewDidAppear、viewWillDisappear、viewDidDisappear
init:方法在init方法中实例化必要的对象(遵从LazyLoad思想)init方法中初始化ViewController本身loadView:方法这是当没有正在使用nib视图页面,子类将会创建自己的自定义视图层。绝不能直接调用。如果手工维护views,必须重载重写该方法。当view需要被展示而它却是nil时,viewContro原创 2013-02-21 16:41:16 · 17084 阅读 · 0 评论