IOS
微信公众号
Hello world
展开
-
iOS页面跳转及数据传递
iOS页面跳转及数据传递转: http://blog.csdn.net/wang9834664/article/details/8025571iOS页面跳转:第一种[self.navigationController pushViewController:subTableViewController animated:YES]; //描述:通过 N转载 2014-01-22 01:31:23 · 2914 阅读 · 0 评论 -
iOS中assign、copy 、retain 关键字的含义
assign: 简单赋值,不更改索引计数copy: 建立一个索引计数为1的对象,然后释放旧对象retain:释放旧的对象,将旧对象的值赋予输入对象,再提高输入对象的索引计数为1Copy其实是建立了一个相同的对象,而retain不是:比如一个NSString对象,地址为0×1111,内容为@”STR”Copy到另外一个NSString之 后,地址为0×2222,内容相同,新的转载 2014-01-24 17:04:13 · 1795 阅读 · 1 评论 -
iOS 类别和扩展(Categories和Extensions)
分类(Category) 分类能够做到的事情主要是:即使在你不知道一个类的源码情况下,向这个类添加扩展的方法。 此外,分类能够保证你的实现类和其他的文件区分开。 1 #import “UIViewController.h”2 @interface UIViewController(CustomView)3 -(void)extMeth转载 2014-03-12 17:59:40 · 58952 阅读 · 3 评论 -
IOS 委托和协议区别和联系
IOS上的协议类似于C#、Java上面的接口,他是从类中抽出来的一系列方法,但方法的实现是在实现这个协议的类中,任何实现这个协议的类都需要实现协议类中的@require方法;委托是一种设计模式,是一种设计思想。但是在IOS上面委托经常依托协议来实现(但并不是必须的)。一个很好的例子就是老板和秘书:老板要经营企业需要对新员工培训、对公司管理、打电话、发薪水等工作,但是对应老板来说一些转载 2014-03-12 17:32:51 · 5897 阅读 · 3 评论 -
Core Animation之基础介绍
Core Animation可以翻译为核心动画,它为图形渲染和动画提供了基础。使用核心动画,你只需要设置一些参数比如起点和终点,剩下的帧核心动画为你自动完成。核心动画使用硬件加速,不用消耗cpu资源。其实平时咱们开发的iOS应用都在有意无意的使用了核心动画。动画不会替代View,而是和View一起提供更好的性能。Core Animation通过缓存view上的内容到bitmap,这样bitmap就转载 2014-03-13 20:35:32 · 795 阅读 · 0 评论 -
IOS中Json解析的四种方法
作为一种轻量级的数据交换格式,json正在逐步取代xml,成为网络数据的通用格式。有的json代码格式比较混乱,可以使用此“http://www.bejson.com/”网站来进行JSON格式化校验(点击打开链接)。此网站不仅可以检测Json代码中的错误,而且可以以视图形式显示json中的数据内容,很是方便。从IOS5开始,APPLE提供了对json的原生支持(NSJSONSe转载 2014-03-18 14:43:45 · 1042 阅读 · 0 评论 -
NSPredicate
简述:Cocoa框架中的NSPredicate用于查询,原理和用法都类似于SQL中的where,作用相当于数据库的过滤取。定义(最常用到的方法):[cpp] view plaincopyNSPredicate *ca = [NSPredicate predicateWithFormat:(NSString *), ...];转载 2014-03-18 16:00:30 · 875 阅读 · 0 评论 -
NSCoding协议
由于Sqlite数据库的blob数据和NSData的兼容比较好,我想尝试把一个NSArray存入Sqlite。Sqlite不支持数组的直接存储,所以我寻找了一些数组转化为NSData的方法。网上大多数的解决办法都是针对于字符数组,eg: NSArray*array01= [[NSArrayalloc]initWithObjects:@"1",@"2",@"3",nil];这种数组的解决转载 2014-04-01 12:28:20 · 1385 阅读 · 0 评论 -
UIScrollView的详细讲解
今天就讲下UIScrollView的一些事情,这个可以拖动的组件无论在应用还是游戏开发都会经常用到,所以我们就一定要更加熟悉它了。下面我们开始下手咯。(1)初始化一般的组件初始化都可以alloc和init来初始化,上一段代码初始化。view plainUIScrollView *sv =[[UIScrollView alloc] initWithFrame:CGR转载 2014-03-20 10:41:25 · 814 阅读 · 0 评论 -
What's the difference between Quartz Core, Core Graphics and Quartz 2D?
Quartz frameworks and their APIsCoreGraphics.frameworkQuartz 2D API manages the graphic context and implements drawing.Quartz Services API provides low level access to the window serve转载 2014-03-20 17:15:12 · 1000 阅读 · 0 评论 -
IOS AVAudioPlayer 音频播放
IOS AVAudioPlayer 音频播放要给工程中添加音频,首先要导入音频的框架 AVFoundation.framework然后新建一个类继承于UIViewController, 我这里就叫FirstVC.首先在 AppDelegate.m中初始化根视图 1 // 2 // AppDelegate.m 3 // YinPinShiPin 4 //转载 2014-03-20 14:25:36 · 1899 阅读 · 0 评论 -
直接拿来用!最火的iOS开源项目(一)
http://www.csdn.net/article/2013-06-05/2815530-GitHub-iOS-open-source-projects-one转载 2014-04-17 14:50:54 · 1652 阅读 · 0 评论 -
IOS用CGContextRef画各种图形(文字、圆、直线、弧线、矩形、扇形、椭圆、三角形、圆角矩形、贝塞尔曲线、图片)
http://blog.csdn.net/rhljiayou/article/details/9919713转载 2014-04-17 14:54:25 · 14899 阅读 · 3 评论 -
iOS 7 页面布局
前言iOS7是目前iOS史上最颠覆的一次改版。它的出现令人兴奋,因为它将会带我们进入一个全新的时代;它的到来也让我们忧心,因为它颠覆了一切,包括我们过去做过的很多努力。但是,相信大家乐意为这个全新时代做更多的努力,因为,它值得期待。 最近打算写一系列针对iOS7新特性的文章,今天就从最基本和简单的页面布局开始吧。 从头说起转载 2014-05-06 16:09:43 · 1396 阅读 · 0 评论 -
iOS 火星坐标相关整理及解决方案汇总
这几天在处理定位相关的代码,彻彻底底的被火星坐标恶心到了。恶心列表从 CLLocationManager 取出来的经纬度放到 mapView 上显示,是错的!从 CLLocationManager 取出来的经纬度去 Google Maps API 做逆地址解析,当然是错的!从 MKMapView 取出来的经纬度去 Google Maps API 做逆地址解析终于对了。去百度地图转载 2014-05-06 16:32:02 · 7520 阅读 · 1 评论 -
IOS开发常用工具网站地址
IOS工具网站http://www.scoop.it/t/ios-dev ios 工具推荐网站http://blog.devtang.com/blog/2012/12/02/use-cocoapod-to-manage-ios-lib-dependency/ ios包依赖管理http://sparkinspector.com/ IOS动态运行时分析htt转载 2014-05-06 17:16:04 · 2701 阅读 · 0 评论 -
IOS 定位代码中崩溃位置
步骤1在xcode添加一个通用断点就行了。方法如下:点击项目导航断点那,如图定位代码中崩溃位置" style="margin:0px; padding:0px; border:0px none; list-style:none; max-width:100%">步骤2点击+号:定位代码中崩溃位置" style="margin:0px; p转载 2014-05-06 17:11:43 · 3636 阅读 · 0 评论 -
iOS第三方开源库的吐槽和备忘
做iOS开发总会接触到一些第三方库,这里整理一下,做一些吐槽。 目前比较活跃的社区仍旧是Github,除此以外也有一些不错的库散落在Google Code、SourceForge等地方。由于Github社区太过主流,这里主要介绍一下Github里面流行的iOS库。 首先整理了一份Github上排名靠前的iOS库(大概600个repos) 除了逛一下每转载 2014-05-06 16:50:25 · 1748 阅读 · 0 评论 -
25个增强iOS应用程序性能的提示和技巧
初级在开发过程中,下面这些初级技巧需要时刻注意: 1.使用ARC进行内存管理2.在适当的情况下使用reuseIdentifier3.尽可能将View设置为不透明(Opaque)4.避免臃肿的XIBs5.不要阻塞主线程6.让图片的大小跟UIImageView一样7.选择正确的集合8.使用GZIP压缩 1) 使用ARC进行内存管理转载 2014-05-07 17:44:00 · 2123 阅读 · 0 评论 -
unrecognized selector sent to instance 0x266070
unrecognized selector sent to instance字面上翻译:给实体对象发送了不认识的消息。遇到这个问题:大概有如下两个原因:1.对象过早的释放掉了,你引用的对象不存在。不能想空对象发送特定的方法(不是全部,因为release等特殊方法,例外)。2.该对象没有这个方法,检查一下方法参数跟调用该方法时参数是否匹配(切记粗心大意)。原创 2014-04-14 23:33:20 · 43447 阅读 · 0 评论 -
contentSize、contentInset和contentOffset
contentSize、contentInset和contentOffset 是 scrollView三个基本的属性。contentSize: The size of the content view. 其实就是scrollview可以滚动的区域,比如frame = (0 ,0 ,320 ,480) contentSize = (320 ,960),代表你的scrollview可以上下滚动转载 2014-04-16 23:52:55 · 34432 阅读 · 0 评论 -
initWithNibName 和 init 关系
Actually, init is just initWithNibName with the arguments are set nil.if you redfine init, then you have to call :self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];Then you转载 2014-05-11 17:42:06 · 1449 阅读 · 0 评论 -
hitTest:withEvent:方法流程
此方法可实现点击穿透、点击下层视图功能。 一. hitTest:withEvent:调用过程iOS系统检测到手指触摸(Touch)操作时会将其放入当前活动Application的事件队列,UIApplication会从事件队列中取出触摸事件并传递给key window(当前接收用户事件的窗口)处理,window对象首先会使用hitTest:withEvent:方法寻找此转载 2014-04-11 15:03:52 · 27326 阅读 · 4 评论 -
IOS 屏幕尺寸、分辨率、点之间的相互关系
iOS 设备现有的分辨率如下:iPhone/iPod Touch普通屏 320像素 x 480像素 iPhone 1、3G、3GS,iPod Touch 1、2、33:2 Retina 屏 640像素 x 960像素 iPhone 4、4S,iPod Touch 416:9 Retina 屏原创 2014-05-11 17:30:28 · 24193 阅读 · 2 评论 -
OC中NSString 的常用方法
NSString *str1 = @"BeiJing"; NSString *str2 = @"beijing"; //全部转为大写 NSLog(@"%@",[str1 uppercaseString]); //全部转为小写 NSLog(@"%@",[str1 lowercaseString]); //首字母大写转载 2014-04-26 14:42:31 · 1289 阅读 · 0 评论 -
IOS 启动画面和图标设置(适配IOS7 and Xcode5)
关于IOS程序设置启动画面以及图标的设备目前主要为:IPhone设备 和IPad设备IPhone启动画面以及图标的设置目前IPhone的分辨率为:320X480、640X960、640X1136。Default.png 320X480 iPhone 320X480分辨率屏幕默认启动图片。Default@2x.png转载 2014-06-04 11:54:57 · 7015 阅读 · 0 评论 -
libxml/HTMLparser.h file not found 解决方法 (libxml.dylib错误处理)
导入了libxml2.dylib,但是却提示libxml/HTMLparser.h file not found,那是因为你的开发环境默认的路径无法找到这个libxml2.dylib框架,修改方法:(两种方法都试一下吧)第一种方法:点击左边项目的根目录,再点击右边的Build Settings,手工输入文字:“Header search paths”,然后单击(或双击,点击弹出转载 2014-06-04 17:56:54 · 4891 阅读 · 0 评论 -
libxml/HTMLparser.h file not found 解决方法 (libxml.dylib错误处理)
导入了libxml2.dylib,但是却提示libxml/HTMLparser.h file not found,那是因为你的开发环境默认的路径无法找到这个libxml2.dylib框架,修改方法:(两种方法都试一下吧)第一种方法:点击左边项目的根目录,再点击右边的Build Settings,手工输入文字:“Header search paths”,然后单击(或双击,点击弹出转载 2014-06-04 18:11:29 · 971 阅读 · 0 评论 -
IOS 实现录音PCM转MP3格式(边录音边转码)
最近做的一个项目,项目中有个录音功能,采用的录音方法是IOS下的AVAudioRecorder。录音效果不错,但是录制的原生.pcm文件太大,每分钟大约10M左右。找了下相关的音频压缩方法,用speex的比较多。按照speex的示例文档折腾了半天,实现了转码压缩。speex压缩率还蛮高的,但是压缩之后的pcm文件不能播放,需要解码回来,可是按照示例代码解码之后的pcm文件依旧不能播转载 2014-06-05 10:18:03 · 3748 阅读 · 0 评论 -
NSJSONSerialization 反序列化失败
今天调用: NSDictionary *dic= [NSJSONSerializationJSONObjectWithData:[result dataUsingEncoding:NSUTF8StringEncoding]options:kNilOptionserror:&error];时失败,b原创 2014-06-05 17:07:45 · 14355 阅读 · 0 评论 -
IOS: iPhone键盘通知与键盘定制
一.键盘通知当文本View(如UITextField,UITextView, UIWebView内的输入框)进入编辑模式成为first responder时,系统会自动显示键盘。成为firstresponder可能由用户点击触发,也可向文本View发送becomeFirstResponder消息触发。当文本视图退出first responder时,键盘会消失。文本View退出fir转载 2014-05-23 13:57:35 · 1153 阅读 · 0 评论 -
loaded the "XXXView" nib but the view outlet was not set 解决方案
'-[UIViewController _loadViewFromNibNamed:bundle:] loaded the "XXXView" nib but the view outlet was not set.'查书才知道,没有做nib文件到xxxViewControler程序的关联,特此记录下来:1, 打开nib文件2, 点击"File's Owner", 按command+4转载 2014-06-06 17:30:57 · 21429 阅读 · 1 评论 -
IOS 使用自定义手势屏蔽按钮解决方法/UITapGestureRecognizer屏蔽Button
1、在.h 头文件中添加委托2、在.m 体文件中添加实现方法————#pragma mark - UIGestureRecognizerDelegate// 当一个事件判定为是一个手势时,先进入手势代理方法。该方法中判断点击的视图是不是button如果是button则返回NO,手势不响应该事件,既然没响应,也不会取消该事件的传递。则button会接收到该事件,并作处理。-(转载 2014-06-30 17:10:45 · 3730 阅读 · 0 评论 -
iOS中打印日志显示系统详细时间,类名,行号及打印值
Q:如何打印当前的函数和行号?A:我们可以在打印时使用一些预编译宏作为打印参数,来打印当前的函数和行号。如:1NSLog(@"%s:%d obj=%@", __func__, __LINE__, obj);其中__func__和__LINE__都是预编译的宏,编译时会分别替换为当前函数和当前行号转载 2014-06-10 10:29:12 · 13744 阅读 · 0 评论 -
AVAudioRecorder录音和AVAudioPlayer播放声音小的问题!
问题描述:播放完一段音频,声音大小正常;录完原创 2014-06-30 17:15:39 · 7046 阅读 · 1 评论 -
iOS应用开发者需知的IAP功能运作机制
苹果Store Kit工具可助开发者实现应用程序与App Store的信息交流。应用程序可使用Store Kit接收将在App Store应用中出售的商品本地信息。应用程序会向用户展示这些信息,以便后者购买虚拟商品。当用户打算购买某项物品时,应用程序就会调用Store Kit搜集用户的支付信息,下图是基本的应用商店IAP(应用内置付费功能)运作模式。remote_store_fet转载 2014-07-22 17:01:52 · 3380 阅读 · 0 评论 -
IOS:Xcode 5.0 failed to get the task for process解决方法
今天真机调试,程序在手机上启动时,原创 2014-06-12 15:31:39 · 5843 阅读 · 0 评论 -
IOS多线程编程之Grand Central Dispatch(GCD)介绍和使用
1.Dispatch After主要用于延迟执行一些代码。例子: int64_t delayInSeconds = 1.0; dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, delayInSeconds * NSEC_PER_SEC); dispatch_after(popT转载 2014-06-15 11:08:05 · 797 阅读 · 0 评论 -
苹果所有常用证书,appID,Provisioning Profiles配置说明及制作图文教程(精)
概述:苹果的证书繁锁复杂,制作管理相当麻烦,今天决定重置一个游戏项目中的所有证书,做了这么多次还是感觉很纠结,索性直接记录下来,日后你我他查阅都方便;首先得描述一下各个证书的定位,作用,这样在制作的时候心中有谱,对整个流程的把握也会准确一些;1、开发者证书(分为开发和发布两种,类型为ios Development,ios Distribution),这个是最基础的,不论是真转载 2014-07-26 23:58:40 · 834 阅读 · 0 评论 -
XCode报错 has been modified since the precompiled header was built
环境:XCode 5.1Mac OS 10.9问题:“........” has been modified since the precompiled header "......." was built解决方法:方法1)clean项目 * Project -> Clean * Shift + Command转载 2014-07-28 09:16:10 · 933 阅读 · 0 评论