- 博客(204)
- 收藏
- 关注
原创 我所用到的第三方开源库源码阅读分析笔记
关注一。UITableView+FDTemplateLayoutCell首发地址介绍第一个是让我从复杂的tableviewcell布局中解放出来的一个category:UITableView-FDTemplateLayoutCell,我在上一篇文章中有提起:(iOS)使用auto layout进行复杂布局时,UILabel的相关trick
2016-06-19 17:19:50
937
转载 GCD代码分析
转载自:http://blog.youkuaiyun.com/mad2man/article/details/217862511. Dispatch Queue执行处理有两种Dispatch Queue。一种是等待现在执行中的处理的Serial Dispatch Queue。(顺序执行)另一种是不等待现在执行中处理的Concurrent Dispatch Queue。(并行执行)
2016-05-28 10:36:02
1359
原创 iOS之自动释放原理
当您向一个对象发送一个autorelease消息时,Cocoa就会将该对象的一个引用放入到最新的自动释放池。它仍然是个正当的对象,因此自动释放池定义的作用域内的其它对象可以向它发送消息。当程序执行到作用域结束的位置时,自动释放池就会被释放,池中的所有对象也就被释放。 1. ojc-c 是通过一种"referring counting"(引用计数)的方式来管理内存的, 对象在开始分配内存(a
2016-05-28 09:01:12
588
原创 iOS之block重认识
Block块.1.声明Blockint (^myBlock)(int n) = ^(int num)类型 (^名称)(需要传的参数)= ^(参数)2 __block 变量在block块中修改block块外部变量的值,只有将外部的变量前面加_ _(两个短杠才能修改)3 __weak 变量在ARC机制下,如果block中应用控制器对象或者其实例变
2016-05-28 00:23:19
458
原创 iOS之沙盒存储
内存指的就是主板上的存储部件,是CPU直接与之沟通,并用其存储数据的部件,存放当前正在使用的(即执行中)的数据和程序,它的物理实质就是一组或多组具备数据输入输出和数据存储功能的集成电路,内存只用于暂时存放程序和数据,一旦关闭电源或发生断电,其中的程序和数据就会丢失。 1 #import "ViewController.h" 2 #import "CZApp.h" 3 @int
2016-05-28 00:21:16
576
原创 iOS之NSCache介绍
NSCache:专门做缓存的类NSCache简介:NSCache是苹果官方提供的缓存类,用法与NSMutableDictionary的用法很相似,在AFNetworking和SDWebImage中,使用它来管理缓存。NSCache在系统内存很低时,会自动释放一些对象(出自苹果官方文档,不过在模拟器中模拟内存警告时,不会做缓存的清理动作) 为了确保接收到内存警告时能够真正释放内存,最
2016-05-28 00:19:29
592
原创 iOS之第三方小结
在IOS开发中我们不可避免的需要一些封装好的第三库。故总结一下是必要的网络请求类:AFNetworking: 常用的网络请求组件,个人认为其封装比较完美,可亲求多种数据类型,如:JSON,Xml,图片,二进制文件。还可以将以上类型文件上传到后台,端的是牛逼的很。一般默认为是异步请求在PCH文件中导入#ifndef AFNetWorking___Net_p
2016-05-28 00:17:57
439
原创 iOS之工厂模式介绍
设计模式:目的是让代码更容易修改,更加容易扩展。IOS中的设计模式主要用于降低类与类之间的耦合性,是程序思路更加明确而创立的定义:1.简单工厂模式:实质是有一个工厂类根据传入的参数,动态决定决定应该创建哪一个产品类工厂模式包含三个部分:(1)工厂角色:接收客户请求,通过请求创建相应的对象(2)抽象产品:是工厂所创建的父亲或共同拥有的接口,可以是抽象类或接口
2016-05-28 00:15:25
569
原创 iOS之图片轮播代码共享
我们在做项目是有时候会遇到图片轮播:DEMO:.h#import @interface ImagePlayView : UIView@property (nonatomic, strong) UIScrollView * scroll;@property (nonatomic, strong) UIPageControl * play;@property (
2016-05-28 00:12:29
520
原创 iOS之程序上架注意事项
IOS开发最终都会上传APP,但是当我们做好一个项目后。在上传AppStore上的时候往往会被各种原因打回来。让人蛋疼无比。于是总结了比较容易出现项目被打回容易出现的原因1.程序崩溃会被打回这个没得解释,程序不能运行成功,被打回是必然的啦2.当项目中涉及收费等有金钱支付的时候会被打回,必须要回答他的一些关于软件上的收费之类的问题,否者审核不通过3.版权问题。
2016-05-28 00:10:07
726
原创 iOS之地图定位简单介绍
1.在iOSApp开发中,尤其是O2O类型的的App往往包含着定位或地图这两项功能,所以说定位和地图是iOS开发中一种常用的第三方(iOS自带高德地图)。 2.定位:首先我们先来说说定位:废话不多说,直接上干货。 (1)首先我们先要知道定位需要什么: 静态包: 导入#import (2)代码//宏定义#d
2016-05-28 00:07:51
464
原创 iOS之友盟分享
http://dev.umeng.com/social/ios/share/quick-integration注意:苹果审核政策需求,建议对未安装的客户端平台进行隐藏,在设置QQ。微信Appid之后调用方法: [UMSocialConfig hiddenNotInstallPlatforms:@[UMShareToQQ, UMShareToQzone, UMShareToWecha
2016-05-28 00:06:10
3072
原创 iOS之百度云推送二
在iOS开发中我们开发中往往离不开远程推送,因为他能够有提醒客户自己的存在,且能够通过消息提醒来获取用户的回头率。百度推送:1.框架设计: Apple 的推送服务器 APNS (Apple Push Notification Service) 发送需要推送的消息,APNS 在收到消息后,会将消息发到设备上。以上整个过程较为复杂,而且功能比较单一,在集成
2016-05-28 00:03:46
2138
原创 iOS之百度云推送
1.实现原理远程推送的原理: 图中Provider是指ios程序的服务器,APNS是指苹果服务器。上图的流程是这样的,第一,应用程序的服务器把要发送的消息,目的iphone的标识打包,发给APNS;第二,APNS在自身的已注册Push服务的iphone列表中,查找有相应标示符的iphone,并把消息发到iphone;第三,iphone把发来的消息传递给相应的应用程序,并且按照
2016-05-28 00:00:37
968
原创 iOS之支付宝简单介绍二
上一篇我们将了支付宝集成,集成后我们当然要使用它了。下面我们就来看看支付宝的调用了(1)保留支付宝的oder文件,我们可以知道他需要的参数是那些(自己看无需废话)(2)好了,让我们的目光回到支付宝的iOSDEMO中(3)上干货: if ([partner length] == 0 || [seller length] == 0 ||
2016-05-27 23:56:01
395
原创 iOS之支付宝简单介绍
逻辑流程图:数据交互流程配置请求信息:参数参数名称类型(字节长度)参数说明是否可为空 样例service 接口名称String接口名称,固定值。 不可空 mobile.securitypay.paypartner 合作者
2016-05-27 23:54:22
841
原创 iOS之基础框架再认识
在你开发程序时,主要使用框架就是Foundation和UIKit,因为它们包含了你需要的大部分东西。Foundation框架为所有的应用程序提供基本系统服务 你的应用程序,UIKit和其它的框架都是建立在Foundation框架上面的。Foundation框架是用Object-C对Core Foundation框架里许多特性的封装。 使用Foundat
2016-05-27 23:51:01
384
原创 hHTTP协议讲解
转自:http://blog.youkuaiyun.com/gueter/archive/2007/03/08/1524447.aspx引言 HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中
2016-05-03 14:14:04
5901
原创 MJExtension使用详解
MJExtensionA fast, convenient and nonintrusive conversion between JSON and model.转换速度快、使用简单方便的字典转模型框架GitHub:CoderMJLee | Blog:mjios(Chinese) | PR is welcome,or feedbackContentsGetting
2016-04-30 00:12:49
1546
转载 CoreLocation框架的使用
http://www.jianshu.com/p/dd96f9c03f48一. iOS8.0之前的定位1. 前台定位导入CoreLocation框架以及对应的主头文件 #import 创建CLLocationManager对象并设置代理 self.locationM = [[CLLocationManager alloc] init];
2016-04-25 20:22:31
640
原创 有价值第三方库
1.ODRefreshControl qq使用的下拉刷新库2.RFKeyboardToolbar 是iOS一款灵活的添加自定义按钮和工具栏的工具。它是UIView 和UIButton 的子集。你可以在你的 UITextFields/UITextViews自由的添加自定义的按钮和工具栏。3.YLGIFImage 是异步加载GIF图片的类,支持GIF图片的播放与暂停。它用的内存很少,完
2016-04-18 00:37:48
325
转载 iOS9 http与https
转载自:http://www.jianshu.com/p/914095bb93441:https的访问.需要证书才能够访问,加强了系统的安全性 。2:实现方法: 只需在一个请求中设置成https,其它的请求页面都会转为https 如:我们在登录页设置https: :/tellin/portal/loginaction.action">将action的
2016-04-18 00:35:33
718
原创 reason: 'UITableView failed to obtain a cell from its dataSource'
错误描述如题;解决方法:将代码中的注释行打开即可。
2016-04-17 20:21:09
672
转载 安装Cocoapods, 更新gem出现的问题
转载自:http://www.bubuko.com/infodetail-1136466.html我现在需要安装Cocoapods 。gem的镜像一景更换为淘宝的了。执行sudo gem install cocoapods出现错误:ERROR: While executing gem ... (Errno::EPERM) Operation not
2016-04-17 08:33:33
425
原创 iOS开发中UIButton的setImage和setBackgroundImage用法区别
- (void)setImage:(nullableUIImage *)image forState:(UIControlState)state; // default is nil. should be same size if different for different states该方法不会拉伸图片,保持图片的原始比例显示在Button
2016-04-16 10:27:05
632
原创 字符串转时间时的注意
字符串转时间,特别是新浪微博返回的字符格式转时间时,必须设置NSDateFormatter的NSLocale。否则不会转成功!!!NSDateFormatter *fmt = [[NSDateFormatteralloc] init]; fmt.dateFormat =@"EEE MMM dd HH:mm:ss Z yyyy
2016-03-25 23:09:55
329
转载 iOS-时间与日期详解
转载自:http://www.jianshu.com/p/f8aab37a27ff时间戳:从1970年1月1号 00:00:00开始走过的毫秒数注意:1秒==1000毫秒// 时间字符串 -> 时间戳NSString *string = @"1745645645645";NSTimeInterval second = string.longLongValue / 1000.0;
2016-03-24 19:29:14
376
转载 NSCalendar + NSDateComponents
目录[-]iOS时间那点事NSCalendar + NSDateComponentsNSDateComponents实例化的方式第一种:第二种:第三种:NSCalendar中比较重要的方法和概念firstWeekday-(NSRange)rangeOfUnit:(NSCalendarUnit)smaller inUnit:(NSCalendarUnit)
2016-03-24 19:21:12
259
转载 NSCalendar 日历类
转载自:http://www.cnblogs.com/wujian1360/archive/2011/09/05/2168007.htmlNSCalendar用于处理时间相关问题。比如比较时间前后、计算日期所的周别等。 1. 创建或初始化可用以下方法 + (id)currentCalendar; 取得当前用户的逻辑日历(logical calen
2016-03-24 14:09:15
257
原创 NSDateFormatter的格式串详解
a: AM/PM (上午/下午)A: 0~86399999 (一天的第A微秒)c/cc: 1~7 (一周的第一天, 周天为1)ccc: Sun/Mon/Tue/Wed/Thu/Fri/Sat (星期几简写)cccc: Sunday/Monday/Tuesday/Wednesday/Thursday/Friday/Saturday (星期几全拼)d: 1~31 (月份的第几天, 带0)
2016-03-24 13:44:00
294
转载 iOS-NSDateFormatter 格式说明
格式化参数如下: G: 公元时代,例如AD公元 yy: 年的后2位 yyyy: 完整年 MM: 月,显示为1-12 MMM: 月,显示为英文月份简写,如 Jan MMMM: 月,显示为英文月份全称,如 Janualy dd: 日,2位数表示,如02 d: 日,1-2位显示,如 2 EEE: 简写星期几,如Su
2016-03-23 21:05:44
275
原创 截取指定字符串
NSString *string = @"abavavasdsvx,as.dsf/,.[abcdefghijklmn]dgdfg";NSRange start = [string rangeOfString:@"["]; NSRange end = [string rangeOfString:@"]; NSString *sub = [string substringWit
2016-03-12 13:55:51
268
转载 在iOS8创建一个交互性强的本地通知
http://www.cocoachina.com/ios/20150112/10901.html通知(Notifications),是App用来和用户交流的一种方式,特别是当App并没有在前台运行的时候。通知,正如它的名称所强调的,被用作向用户‘通知’一个事件,或者仅仅向用户提示一条重要信息。总而言之,通知在提示类型的App当中非常有用,甚至在一些别的类型的App当中也是
2016-03-09 14:35:01
325
转载 IOS学习之:网络数据的XML解析
转载自:http://blog.youkuaiyun.com/nono_love_lilith/article/details/7829732网络应用中的数据解析,因为最近的应用,无论是Android的和ios平台的,一直用也是建议用的都是Json解析,xml解析都有点被遗忘了。然后最近自己在做着玩一个ios的小应用,涉及网络数据的抓取,一些网站可能都提供了自己api平台,这些一般都是支持
2016-03-08 15:09:45
274
转载 CocoaPods安装使用及配置私有库
原文转载自:http://www.exiatian.com/cocoapods安装使用及配置私有库/如何安装?1.安装ruby环境,添加淘宝ruby镜像$ gem sources --remove https://rubygems.org///等有反应之后再敲入以下命令$ gem sources -a http://ruby.taobao
2016-03-04 16:27:54
272
原创 解决CocoaPods在OS X 10.11出现问题
摘要 解决CocoaPods在OS X 10.11上出现的问题。 最近把mac系统升级到10.11系统,但是在用pod install命令的时候,却提示command not found.后来上网查了下才知道,Cocoapods在10.11系统上发生了变化。 在stackoverflow搜到的解释是这样的,This is happening because
2016-03-04 16:23:28
259
转载 IOS学习:ios开发之数据的持久化存储机制
IOS中数据的持久化保存这块内容,类似于Android中文件的几种常见的存储方式。对于数据的持久化存储,ios中一般提供了4种不同的机制。1.属性列表2.对象归档3.数据库存储(SQLite3)4.苹果公司提供的持久性工具Core Data。其实储存的形式无非就这么几种,而我们还必须要关心的是,这些文件会被放置在那个文件下,然后如何读取。也就是说:IOS上数据存
2016-03-04 00:35:39
342
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人