自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(112)
  • 收藏
  • 关注

原创 iOS内购详细流程汇总

http://blog.sina.com.cn/s/blog_4a2183a60101lc8a.html

2015-07-10 12:42:57 527

原创 dispatch_source_t _timer 定时器

@interface ViewController (){ IBOutlet UIButton *l_timeButton;} @end @implementation ViewController - (void)viewDidLoad{ [super viewDidLoad]; [l_timeButton addTarget:self action:

2015-05-22 08:51:24 6735

原创 ipa打包

http://blog.csdn.net/hengshujiyi/article/details/9159531

2015-05-08 16:24:50 384

原创 各种多线程的使用方式

http://www.cnblogs.com/kenshincui/p/3983982.htmlhttp://www.dreamingwish.com/frontui/article/default/of-of-of-of-gcd-introduced-1-basic-concepts-in-and-the-dispatch-queue.html

2015-04-24 10:44:12 486

原创 cocoaPods高级用法

http://iiiyu.com/2012/10/26/learning-ios-notes-fourteen/

2015-04-20 11:30:30 522

原创 音频播放,录音,视频播放,拍照,视频录制

http://www.cnblogs.com/kenshincui/p/4186022.html

2015-04-20 10:37:17 571

原创 tableView自适应cell的高度,提高性能

1、设置好布局约束条件在UITableViewCell子类中,添加布局约束,使得cell子视图的边缘固定(pin)到cell的contentView的边缘(最重要的是要有顶部和底部的边距约束条件)。注意:不要将子视图的边距约束固定到cell本身上了,只能固定到cell的contentView上! 确保每个子视图垂直方向上的内容压缩阻力(compression resistance)和吸附性约束(

2015-04-16 16:40:04 1998

原创 百度地图位置纠偏

这里先分析一下我所要实现的功能,如果只获取当前的周边地理信息,真的需要这么麻烦的纠偏吗,其实这个答案在网络上真没有找到相关资料,不过同事瑞勤大牛却提出另一种获知当前经纬度的方法,经过测试,的确效果大不同啊,呃,上面纯属话唠,下面正式对比纠偏与非纠偏的各自实现方式,最终功能为获取当前用户的周边地理位置信息。…………纠偏 篇…………..1. 涉及接口:2. 核心代码解读:if ([CL

2014-12-11 10:30:56 2158

原创 使用SOAP访问Web服务

SOAP是简单对象访问协议,它可看成是HTTP与XML的结合,其中XML部分是作为HTTP报文的实体主体部分。具体信息可以参考百度百科。在iOS中使用SOAP,需要我们自己组装XML格式的字符串,当XML字符串比较长的时候会变得很麻烦。另外,我们在写XML格式的字符串时也要经常使用转义字符“\”。看看刚才那个网页的内容,注意到SOAP 1.2标签下的内容:POST /WebService

2014-12-08 08:34:43 482

原创 网络状态的监测

一、说明在网络应用中,需要对用户设备的网络状态进行实时监控,有两个目的:(1)让用户了解自己的网络状态,防止一些误会(比如怪应用无能)(2)根据用户的网络状态进行智能处理,节省用户流量,提高用户体验  WIFI\3G网络:自动下载高清图片  低速网络:只下载缩略图  没有网络:只显示离线的缓存数据 苹果官方提供了一个叫Reachability的示例程序,便于开发者检

2014-11-17 14:55:05 472

原创 获取网络图片的大小

// 图片处理 0 半灰色 1 灰度 2 深棕色 3 反色 +(UIImage*)imageWithImage:(UIImage*)image grayLevelType:(UIImageGrayLevelType)type; //色值 变暗多少 0.0 - 1.0 +(UIImage*)imageWithImage:(UIImage*)image darkValue

2014-11-17 10:29:04 481

原创 ios中的GpuImage及相关滤镜介绍

GPUImage是Brad Larson在github托管的一个开源项目,项目实现了图片滤镜、摄像头实时滤镜,该项目的优点不但在于滤镜很多,而且处理效果是基于GPU的,比使用CPU性能更高。下载地址是:https://github.com/BradLarson/GPUImage已有的一些filter介绍:#import "GPUImageBrightnessFilter.h"

2014-10-26 18:09:16 2387

原创 SDWebImage缓存图片的机制

SDWebImage是一个很厉害的图片缓存的框架。既ASIHttp+AsyncImage之后,我一直使用AFNetworking集成的UIImageView+AFNetworking.h,但后者对于图片的缓存实际应用的是NSURLCache自带的cache机制。而NSURLCache每次都要把缓存的raw data 再转化为UIImage,就带来了数据处理和内存方面的更多操作。具体的比较在这里。

2014-10-19 17:55:13 502

原创 iOS应用程序的完整启动过程及其工作原理

1.先执行main函数,main内部会调用UIApplicationMain函数 2.UIApplicationMain函数里面做了什么事情: 1> 创建UIApplication对象 2> 创建UIApplication的delegate对象—–PYAppDelegate 3> 开启一个消息循环每监听到对应的系统事件时,就会通知MJAppDelegate 4> 为应用程序创建一个U

2014-10-19 14:48:32 501

原创 IOS下的 NSTimer与Run loop Modes的使用和区别

一.NSRunLoop在Cocoa中,每个线程(NSThread)对象中内部都有一个run loop(NSRunLoop)对象用来循环处理输入事件,处理的事件包括两类,一是来自Input sources的异步事件,一是来自Timer sources的同步事件;run Loop在处理输入事件时会产生通知,可以通过Core Foundation向线程中添加run-loop observers来监听

2014-10-19 12:36:21 883

原创 iOS中数据保存几种方式总结

1.NSKeyedArchiver:采用归档的形式来保存数据,该数据对象需要遵守NSCoding协议,并且该对象对应的类必须提供encodeWithCoder:和initWithCoder:方法。前一个方法告诉系统怎么对对象进行编码,而后一个方法则是告诉系统怎么对对象进行解码。例如对Possession对象归档保存。 定义Possession:@interface Possession:NS

2014-10-19 11:03:36 470

原创 isKindOfClass和isMemberOfClass的区别

isKindOfClass: Returns a Boolean value that indicates whether the receiver is an instance of given class or an instance of any class that inherits from that class.isMemberOfClass: Returns a Boolean

2014-10-18 14:29:04 372

原创 知名网站

https://github.com/search?l=Objective-C&q=stars%3A%3E1&ref=searchresults&type=Repositorieshttp://www.cocoachina.com/industry/20130918/7022.htmlhttps://github.com/supermarin/Alcatrazpaintcod

2014-10-18 09:41:15 515

原创 应用程序之间的跳转

在目标程序的plist文件里面修改:打开xxxx-info.plist,添加一项URL types打开URL types,将item0的URL identifier修改为URL Schems展开URL Schemes,将item0的内容修改为xxxApp(此为跳转的key)如下图所示: 在程序里面需要跳转的地方,添加代码NSURL *myUrl = [NSURL UR

2014-10-18 09:29:53 484

原创 有名的博客,订阅软件,API文档

http://onevcat.com/破船之家http://beyondvincent.com/NSHipsterhttp://nshipster.cn/Limboy 无网不剩http://limboy.me唐巧的技术博客http://blog.devtang.com/Lex iOS noteshttp://ios.lextang.com/念茜的博客http://nianx

2014-10-18 09:16:08 528

原创 23种设计模式

一、Singleton,单例模式 二、Abstract Factory,抽象工厂 三、Factory Method 四、Builder,建造模式 五、Prototype,原型模式 六、Iterator,迭代器模式 七、Observer,观察者模式 八、Template Method,模板方法 九、Command,命令模式 十

2014-10-15 17:17:02 521

原创 XMPP的介绍与硬盘格式的问题

XMPP Extensible Messaging and Present Protocol 可扩展通讯和表示协议 功能:XMPP用tcp传送XML流,做即时通讯 官方网站:xmpp.org 服务器环境:ejabberd和Openfire ejabberd:安装比较简单,没有集成客户端,需要另行下载 Openfire

2014-10-15 15:54:55 460

原创 高级宏

#define kMIN(A,B) ({__typeof__(A) _a = (A);__typeof__(B) _b = (B); _a < _b ? _a : _b;})//复合赋值 c语言C99版本里面补充的 int i = 2; int c = kMIN(i++, 3); NSLog(@"%d", c);

2014-10-14 20:15:37 412

原创 JSON解析和XML解析

#import "RootViewController.h"#import "Person.h"#import "GDataXMLNode.h"#import "JSONKit.h"@interface RootViewController ()@property (nonatomic, retain) NSMutableArray *arr;//存储person对象@proper

2014-10-14 16:06:35 503

原创 KVO

KVO- (void)viewDidLoad{ [super viewDidLoad]; // Do any additional setup after loading the view. Movie *movie = [[Movie alloc] init]; /* 注册键值观察(不用的时候一定要注销掉) 参数1:观察者

2014-10-14 16:03:21 535

原创 设计模式种类

一、Singleton,单例模式 二、Abstract Factory,抽象工厂 三、Factory Method 四、Builder,建造模式 五、Prototype,原型模式 六、Iterator,迭代器模式 七、Observer,观察者模式 八、Template Method,模板方法 九、Command,命令模式 十

2014-10-14 16:01:26 405

原创 数据库 sqlite

/* Database.sqlite存放在*.app中的, 存放在*app中的文件是只读的, 不能修改, 所以若要做增删改查, 需要将Database.sqlite存放到除了*app之外的其他文件夹下(比如:Document) Database类负责对数据库的打开和关闭 对sqlite操作需要添加静态库 */#import @interface Database : NS

2014-10-14 14:03:27 440

原创 通知的用法,传值

#import "RootTableViewController.h"@implementation AppDelegate- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{ //注册通知,添加听众 [[N

2014-10-14 13:22:10 458

原创 core data的使用

//@synthesize name = _name;//当同时写了getter和setter方法之后,这个就失效了//属性中,如果是给属性赋值,是一定要用self.,如果是调用属性,不要用self.,这样效率会高一些(注:只有是lazyload的使用,才使用self.)/** * Entity:实体,其实就是sqlite表 Attribute:属性,就是sqlite中的字段 Rela

2014-10-14 08:26:10 419

原创 iOS Block自身的内存问题

block本身是像对象一样可以retain,和release。但是,block在创建的时候,它的内存是分配在栈(stack)上,而不是在堆(heap)上。他本身的作于域是属于创建时候的作用域,一旦在创建时候的作用域外面调用block将导致程序崩溃。比如下面的例子。 我在view did load中创建了一个block: - (void)viewDidLoad

2014-10-11 11:19:25 427

原创 iOS webView

设置背景透明 设置webview的backgroundColor属性为[UIColor clearColor]; webView.backgroundColor = [UIColor clearColor]; 为webview中的HTML页面的body标签添加CSS背景样式设置 ... 设置webview的opaque属性值为NO

2014-10-11 11:14:12 1056

原创 数据持久化,归档,反归档

/** * 数据持久化的本质 将数据读成文件存储在本地 沙盒机制 就是系统针对每个应用程序在本地生成的文件夹 名字随机生成 对于不同的应用程序 不能访问其他应用程序沙盒的内容 起到保护作用 1)Documents: 用来存储长久保存的数据 2)xxx.app: 应用程序的包 包含应用程序加载所需的所有资源 (readOnly 只读 不可修改) 平时

2014-10-11 11:12:02 429

原创 iOS 在ARC模式下使用MRC的工程

OS5.0以后就开始可以使用ARC( Automatic Reference Counting:自动引用计数 )来代替之前的MRC(Manual Reference Counting:人工引用计数)。使用ARC会减少很多代码和忘了释放对象的苦恼。但是事情都有两面性。使用了ARC之后如果你想复用以前写过的使用MRC的类, 就会出报错。这时候怎么办?方法比较简单, 只需要做下面的一个步骤就可以解决:

2014-10-11 11:06:18 1337

原创 iOS屏幕旋转

-(BOOL)shouldAutorotate{ //用来设置当前视图控制器是否支持旋转 return YES; } //设置屏幕旋转方向 系统默认支持三个方向的旋转 竖直 左横屏 右横屏 -(NSUInteger)supportedInterfaceOrientations{ // UIInterfac

2014-10-11 10:57:52 330

原创 NavigationBar的影响和边缘手势,和视频播放时不得自动全屏播放,设置状态条的样式

/* edgesForExtendedLayout是一个类型为UIExtendedEdge的属性,指定边缘要延伸的方向。 因为iOS7鼓励全屏布局,它的默认值很自然地是UIRectEdgeAll,四周边缘均延伸,就是说,如果即使视图中上有navigationBar,下有tabBar,那么视图仍会延伸覆盖到四周的区域。 self.edgesForExtendedLayout

2014-10-11 10:35:05 579

原创 项目上传至iTunes流程

/** * Certificates(证书):是电脑能否加入开发者计划的凭证 证书分为:开发证书和发布(产品证书),开发证书只能做真机测试,发布证书只能做产品发布 identifiers(标识符):应用的唯一标识符(App ID) App ID对应Xcode中的Boundle ID App ID分为明确Apple ID和通配的App ID; 明确的ID可以发布到AppStore,

2014-10-11 10:32:27 497

原创 cocoapods的安装与使用

/** 在此之前:如果命令行工具没有的话,需要按command+,打开dowlonds,选中命令行,并进行勾选 * 1.移除ruby的源地址(用淘宝的Ruby镜像) remove https://rubygems.org/ 2.添加ruby的源地址 (等有反应之后再敲入以下命令)gem sources -a http://ruby.taobao.org/

2014-10-06 11:32:15 475

原创 网络解析html

// Request: My API (http://watch-cdn.idailywatch.com/api/list/cover/zh-hans?page=1&ver=iphone&app_ver=8) NSURL *URL = [NSURL URLWithString:@"http://watch-cdn.idailywatch.com/api/list/cover/zh

2014-10-01 08:51:45 421

原创 上拉刷新,下拉加载功能

先导入第三方MJRefresh,然后将arc改为mrc,导入MJRefresh.h文件,在在要操作的界面上添加功能如://设置代理 [CCJWatchHelper shareWatchHelper].watchHelperDelegate = self;- (void)loadData{ [self.collectionView reloadData]; [self

2014-09-28 13:05:44 734

原创 抓包,第三方数据提取和使用

/** * 抓包步骤 1:手机和电脑在同一个网络下 2:把手机的代理设置为电脑 a:查看电脑的IP地址 b:在手机的wifi中设置代理 3:打开夜壶抓包 *//** * 第三方数据使用:网络:1:AFNetworking(网络,建议使用) 2:ASIHTTP 数据库:FMDB : sqlite

2014-09-22 20:50:01 1253

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除