IOS应用
zhaozy55555
这个作者很懒,什么都没留下…
展开
-
ios block
Ios4已经直接支持blocks,很有必要学习一下。在ios,blocks是对象,它封装了一段代码,这段代码可以在任何时候执行。Blocks可以作为函数参数或者函数的返回值,而其本身又可以带输入参数或返回值。它和传统的函数指针很类似,但是有区别:blocks是inline的,并且它对局部变量是只读的。Blocks的定义: int (^Multiply)(int, int转载 2013-02-28 09:42:06 · 566 阅读 · 0 评论 -
iphone各代cpu架构及xcode对ios sdk版本及cpu架构的支持
原来的iPhone,iPhone3G 以及 第一代和第二代的iPod Touch 均只支持 Armv6的CPU指令集。然而,随着iPhone3GS 这款新产品的发布,Apple 开始支持新的指令集 Armv7,iPhone5的所有设备支持Armv7s,且向下兼容。为了保持向下兼容,且支持旧有设备及旧有指令集,Apple支持胖二进制代码(fat binaries)也就是在可执行文件中支持更多的平转载 2013-02-04 00:03:16 · 4947 阅读 · 0 评论 -
旧工程适配iOS 6和iPhone 5
苹果每发布一个系统,都够开发者忙活一阵的,更新xcode适配新系统:像iOS4支持Retina需要@2x的图;像iOS5不支持udid;像现在的iOS6和iPhone5要面对的下面的一堆问题。1.添加Retina 4 launch image,运行工程的时候会主动提示你。这时候直接点Add就好了。会默认添加一张Default-568h@2x.png的黑图:不添加的话,程序运转载 2013-02-03 23:35:44 · 1910 阅读 · 0 评论 -
mac系统如何显示和隐藏文件
苹果Mac OS X操作系统下,隐藏文件是否显示有很多种设置方法,最简单的要算在Mac终端输入命令。显示/隐藏Mac隐藏文件命令如下(注意其中的空格并且区分大小写):显示Mac隐藏文件的命令:defaults write com.apple.finder AppleShowAllFiles -bool true隐藏Mac隐藏文件的命令:defaults write com.apple.finder转载 2013-01-18 21:22:25 · 518 阅读 · 0 评论 -
Versions 配合 Xcode 4.5 的 FileMerge
Versions 的compare,show change功能都不好用 ,是应为找不到FileMerge.app 。输入如下命令就可以了。需要替换自己的Xcode目录(Application/)sudo /usr/bin/xcode-select -switch /Applications/Xcode.app/Contents/Developer搞定。原创 2013-02-01 11:23:46 · 959 阅读 · 0 评论 -
CGRectInset、CGRectOffset、frame和bounds对比
1、CGRectInsetCGRect CGRectInset ( CGRect rect, CGFloat dx, CGFloat dy);该结构体的应用是以原rect为中心,再参考dx,dy,进行缩放或者放大。dx和dy为正是缩小,为负是放大。CGRectInset 该结构体的应用" alt="" src="http://images.c转载 2012-12-26 16:54:46 · 2297 阅读 · 0 评论 -
XCode工程中 Project 和 Targets区别
XCode工程中 Targets讲解是本文要介绍的内容,相信很多人都注意到XCode中, 有个Target的概念. 这在很多地方都有所体现, 比如打开一个工程后, 左侧的列表中有Targets一项, 而在工程界面的顶部菜单中, project里面也有多个涉及到Target的项目, 那么这个Target到底是什么呢? Apple的人是这样说的:“ Targets that define转载 2013-01-30 17:40:58 · 22151 阅读 · 1 评论 -
怎样在xcode里面使用Memory Leaks和Instruments教程
原文链接地址:http://www.raywenderlich.com/2696/how-to-debug-memory-leaks-with-xcode-and-instruments-tutorial 免责申明(必读!):本博客提供的所有教程的翻译原稿均来自于互联网,仅供学习交流之用,切勿进行商业传播。同时,转载时不要移除本申明。如产生任何纠纷,均与本博客所有人、发表该翻译稿之人无任转载 2013-01-30 23:41:29 · 732 阅读 · 0 评论 -
XCode: 兼容ARC和non-ARC
Objective-C引入ARC(Automatic Reference Counting)后,我们经常会面对这样一种困境:自己的项目使用了ARC,却发现要使用的第三方类库是non-ARC的;又或者自己的项目是non-ARC的,但是想使用一个ARC的第三方类库。 这个时候就有点左右为难了,不知道该让non-ARC迁就ARC,还是让ARC迁就non-ARC。网上有一些做法可以解决这个问题:1转载 2013-01-30 13:25:56 · 5212 阅读 · 1 评论 -
深入浅出 iOS 之多线程 NSThread
iOS 支持多个层次的多线程编程,层次越高的抽象程度越高,使用起来也越方便,也是苹果最推荐使用的方法。下面根据抽象层次从低到高依次列出iOS所支持的多线程编程范式:1, Thread;2, Cocoa operations;3, Grand Central Dispatch (GCD) (iOS4 才开始支持)下面简要说明这三种不同范式:Thread 是这三种范式里面相对轻转载 2013-01-30 17:44:55 · 867 阅读 · 0 评论 -
contentSize, contentOffset, contentInset区别
contentSize 是scrollview中的一个属性,它代表scrollview中的可显示区域,假如有一个scrollview,它的frame为(0,0,320,480),而它的contentSize为(320,960).也就是说,这个scrollview整个内容的大小为(320,960),要通过上下滑动scrollview来查看(320,480)后的内容。contentOffset转载 2013-01-25 13:28:16 · 634 阅读 · 0 评论 -
layoutSubviews调用时机
setNeedsDisplay会调用自动调用drawRect方法,这样可以拿到UIGraphicsGetCurrentContext,就可以画画了。而setNeedsLayout会默认调用layoutSubViews,就可以处理子视图中的一些数据。layoutSubviews在以下情况下会被调用:1、init初始化不会触发layoutSubviews2、addSubview原创 2013-01-09 16:26:55 · 603 阅读 · 0 评论 -
ios 程序跳转到itunes商店
找到应用程序,点击应用程序下面的小三角图标,再选择”复制链接“,就可以获取此应用的链接了。比如:itunes.apple.com/cn/app/bai-du-wen-kuhd/id483064532?mt=8然后将 https:// 替换为 itms:// 或者 itms-apps://: itms://itunes.apple.com/gb/app/yi-dong原创 2013-01-18 10:16:54 · 7510 阅读 · 0 评论 -
userInteractionEnabled
1. UIImageView上面添加按钮,按钮不响应点击时间怎么办?把UIImageVIew的userInteractionEnabled属性设置为YES啊。2. 透明的UIView遮挡住了SuperView,使SuperView不能响应点击事件怎么办?把UIView的userInteractionEnabled属性设置为NO啊。原创 2013-02-05 07:12:03 · 2810 阅读 · 0 评论 -
colorWithPatternImage 的问题
colorWithPatternImage的作用是“Creates and returns a color object using the specified image.”使用时遇到过的问题:1.在SDK4.3版本中,图片为透明图片的话,透明部分会被绘制成黑色。2.iphone5中,图片名称必须带@2x。原创 2013-02-05 15:48:37 · 3089 阅读 · 0 评论 -
IOS---GCD
由于内容太多,没有直接读英文的参考,在网上找了很多,51CTO上的这篇是最全的,转载过来以供学习。学习这个之前建议先看,上一篇“ios block”。详解IOS开发应用之并发Dispatch Queues是本文哟啊介绍的内容,我们几乎可以调度队列去完成所有用线程来完成的任务。调度队列相对于线程代码更简单,易于使用,更高效。下面讲主要简述调度队列,在应用中如何使用调度队列去执行任务。转载 2013-02-28 09:46:24 · 840 阅读 · 0 评论 -
新公司第一个项目总结
一 概述来到新公司的第一个项目已经结束。虽然是项目中期进入的(大概进度60%),收获还是不小的,下面就分享下。二 技术心得 1.第一次做ipad的应用,和iphone的区别还有不少的。 1> ipad程序都会要求支持屏幕旋转适配,这样代码就多出了不少,具体实现方式可以参考我以前写的屏幕旋转实现的文章(下面提到的一些重要技术点,应该都会在博客中找到)。原创 2013-02-25 12:28:39 · 1120 阅读 · 0 评论 -
正确使用PresentModalViewController
一、主要用途 弹出模态ViewController是IOS变成中很有用的一个技术,UIKit提供的一些专门用于模态显示的ViewController,如UIImagePickerController等。弹出模态ViewController主要使用于一下这几种情形: 1、收集用户输入信息 2、临时呈现一些内容 3、临时改变工作模式 4、相应设备方向变转载 2013-03-08 17:12:42 · 694 阅读 · 0 评论 -
详解IOS SDK兼容性引导
原文地址:http://mobile.51cto.com/iphone-284052.htmIOS SDK兼容性引导是本文要介绍的内容,主要是基于IOS SDK基础的开发介绍说明如何应用于XCode工程的基于 IOS SDK开发的技术。来看详细内容讲解。1、用(weakly linked)弱连接类、方法和函数来支持在不同版本之间的程序运行2、弱连接整个框架(framew转载 2013-03-08 17:11:09 · 1357 阅读 · 0 评论 -
获取UIView所属的UIViewController
在UIVIew中实现下面方法:- (UIViewController *)viewController{ UIResponder *responder = self; while ((responder = [responder nextResponder])) { if ([responder isKindOfClass:[UIV原创 2013-03-08 17:09:45 · 872 阅读 · 0 评论 -
xcode 4.5 ios6 新特性
xcode4.5的新特性。@synthesize by default(属性自动绑定)在xcode4.4以前,当我们想为类添加一个新的属性,一般都要对应写实例变量和相应的synthesis,但是在Xcode 4.4之后,synthesis现在会对应property自动生成。默认行为下,对于属性foo,当开发者没有写相应的synthesis的时候,编译器会自动在实现文件中为开发者补全转载 2013-02-23 20:48:15 · 909 阅读 · 0 评论 -
怎样才能做到iOS应用程序与iOS版本兼容
原文地址:http://www.builder.com.cn/2013/0105/2138800.shtmliOS程序员通过一系列强壮指令集把一个好的想法和创意变成了一个APP应用,但在苹果商店里有很多有用的和创新的iOS应用可供用户下载和享受, 因此,拥有最长生命周期的iOS应用程序是与最新iOS版本的保持硬件和软件兼容的程序。幸运的是,每次一个新的iOS版本发布时没有必要去转载 2013-03-08 09:23:48 · 2407 阅读 · 0 评论 -
mac锁屏的三种实现方式
Windows 下用习惯了Win+ L快捷键锁屏,那么Mac下如何操作呢,下面提供三中方法,前两种简单些,第三种比较麻烦,不过可以实现快捷键锁屏。首先开启进入睡眠或开始屏幕保护程序后要求输入密码,在系统偏好设置 – 安全性与隐私。方法一:1、Finder – 应用程序 – 实用工具 – 钥匙串访问;2、点击 Mac 顶部菜单栏的“钥匙串访问”,选择“偏好设置”;原创 2013-03-06 13:15:52 · 2307 阅读 · 0 评论 -
KVO/KVC总结
导读下面是根据网上文章的总结,方便查看。在网上看别人的文章,了解KVC、KVO,有个kvo-kvc的例子,就是改变数组的内容(插入和删除),同步改变tableview中的内容。运行了代码之后,想添加修改数组时改变tableview内容,但是一直不能调用观察函数,后来又查了点资料,原来,数组的kvc是都是有固定格式的函数名字。把改后的工程放到资源里面了。供大家下载。下面是拷贝过来的资料。原创 2013-02-21 15:16:14 · 3541 阅读 · 0 评论 -
IOS谓词--NSPredicate
Cocoa 提供了NSPredicate 用于指定过滤条件,谓词是指在计算机中表示计算真假值的函数,它使用起来有点儿像SQL 的查询条件,主要用于从集合中分拣出符合条件的对象,也可以用于字符串的正则匹配。首先我们看一个非常简单的例子,对谓词有一个认知。#import @interface Person: NSObject{int pid;NSString *name;f转载 2013-02-19 17:24:35 · 15589 阅读 · 1 评论 -
ios屏幕旋转的两种实现方式
ios开发实现屏幕旋转有两种方案;1.通常就是重载shouldAutorotate和shouldAutorotateToInterfaceOrientation两个方法,当然ios6和之前的版本是有区别的,具体参见我转载的《IOS6屏幕旋转详解(自动旋转、手动旋转、兼容IOS6之前的系统)》这篇文章。具体做法一般是在loadview时根据statusBarOrientation方法原创 2013-02-05 15:20:38 · 3101 阅读 · 0 评论 -
IOS6屏幕旋转详解(自动旋转、手动旋转、兼容IOS6之前系统)
概述:在iOS6之前的版本中,通常使用 shouldAutorotateToInterfaceOrientation 来单独控制某个UIViewController的方向,需要哪个viewController支持旋转,只需要重写shouldAutorotateToInterfaceOrientation方法。但是iOS 6里屏幕旋转改变了很多,之前的 shouldAutorotat转载 2013-02-05 15:00:11 · 1035 阅读 · 0 评论 -
UIView的autoresizingMask
UIViewAutoresizingNone = 0, UIViewAutoresizingFlexibleLeftMargin = 1 UIViewAutoresizingFlexibleWidth = 1 UIViewAutoresizingFlexibleRightMargin = 1转载 2013-01-09 11:29:28 · 1698 阅读 · 0 评论 -
learn iphone and ipad cocos2d Game Development读书笔记
1. "fps_images.png"是cocos2d用来显示帧率的,即每秒显示的帧数,不能删除或者修改此图片。 2. Cocos2d管理内存方法:1) 对象实例化调用静态方法:node。 eg:CCNode* myNode = [CCNode node];2) 实例原创 2012-12-20 15:34:39 · 1046 阅读 · 0 评论 -
Objective-C中的锁
锁是线程编程同步工具的基础。锁可以让你很容易保护代码中一大块区域以便你可以确保代码的正确性。 1 使用POSIX互斥锁 POSIX互斥锁在很多程序里面很容易使用。为了新建一个互斥锁,你声明并初始化一个pthread_mutex_t的结构。为了锁住和解锁一个互斥锁,你可以使用pthread_mutex_lock和pthread_mutex_unlock函数。列表4-2显式了要初转载 2012-12-20 15:23:11 · 1483 阅读 · 0 评论 -
iPhone消息推送机制实现与探讨
转载自 http://blog.csdn.net/zhuqilin0/article/details/6527113看了上面的文章,转载记录下。Push的原理:Push 的工作机制可以简单的概括为下图图中,Provider是指某个iPhone软件的Push服务器,这篇文章我将使用.net作为Provider。 APNS 是Apple Push Notif转载 2012-07-16 11:23:48 · 638 阅读 · 0 评论 -
IOS联机调试
详见下面网址http://www.cocoachina.com/bbs/read.php?tid-7923.html转载 2012-07-14 19:51:46 · 561 阅读 · 0 评论 -
UIWebView与JavaScript的交互
UIWebView是iOS最常用的SDK之一,它有一个stringByEvaluatingJavaScriptFromString方法可以将javascript嵌入页面中,通过这个方法我们可以在iOS中与UIWebView中的网页元素交互。stringByEvaluatingJavaScriptFromString 使用stringByEvaluatingJavaScript转载 2012-07-14 20:00:45 · 1335 阅读 · 0 评论 -
统计Xcode项目代码行数
1、打开终端。2、cd到你项目的路径。3、输入下面的指令: grep -d recurse "\n" classes| wc -l 上面红色的部分是你代码的存放路径,如果你不是默认的Classes路径,改之转载 2012-07-11 14:43:19 · 760 阅读 · 0 评论 -
判断字符串中的每个字符是汉字还是非汉字
utf-8为可变字长编码,大部分汉字占3个字节。用 NSString::UTF8String函数转化utf-8编码格式为多字节格式,就可以判断出一个字符占用几个字节了。代码如下: const char* strTest ="我一123兵"; int s8len = strlen(strTest); NSLog(@"s8=%d",s8len);//12 NS原创 2012-06-18 09:21:04 · 1765 阅读 · 0 评论 -
initwithNibName不能初始化wiew
今天写程序发生了一个很怪异的问题,后来总结发现,initwithNibName 中不能有view的东西比如addSubview,view的东西要放在viewdidload中。原创 2012-06-17 22:08:06 · 686 阅读 · 0 评论 -
CGFloat类型作为参数传递问题
CGFloat类型作为参数传递,到函数内部就变成0,不知道为什么。原创 2012-06-17 22:02:29 · 1018 阅读 · 0 评论 -
从架构角度看移动App之争
Native App和Web App孰强孰弱?Web App是否在将来能取代Native App?这一直是移动互联网从业者讨论的话题,本文将从架构的角度来进行分析。还记得C/S和B/S吗类似的技术趋势之争实际上已经有很多了,我们不妨花点时间回顾一下十年前的C/S和B/S之争。20世纪90年代,C/S技术成熟并得到了快速发展,即系统是由客户端和服务器两部分组成。客户端转载 2012-06-17 21:47:57 · 869 阅读 · 0 评论 -
Objective-C语法之Objective-C语言和IOS系统(简介,语法,系统结构)
简介Objective-C,是扩充C的面向对象编程语言。它主要使用于Mac OS Objective-C,通常写作ObjC和较少用的Objective C或Obj-C,是在C的基础上,加入面向对象特性扩充而成的编程语言。目前,Objective-C主要应用于Mac OS X和iOS这两个NeXTSTEP的衍生系统,而在NeXTSTEP和OpenStep中它更是基本语言。Objective-转载 2012-06-17 23:00:42 · 706 阅读 · 0 评论 -
NSString 转换特殊字符“&”“@”“#”等
你提供的 URL 字符串 里面可能包含某些字符,比如‘$‘ ‘&’ ‘?’...等,这些字符在 URL 语法中是具有特殊语法含义的,比如 URL :http://www.baidu.com/s?wd=%BD%AA%C3%C8%D1%BF&rsv_bp=0&rsv_spt=3&inputT=3512 中 的 & 起到分割作用 等等,如果 你提供的URL 本身就含有 这些字符,就需要把转载 2012-06-17 20:30:17 · 6491 阅读 · 0 评论