自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 block

这是唐巧对于block的介绍:http://blog.devtang.com/2013/07/28/a-look-inside-blocks/block跟似乎C语言的函数指针是一样的,但是两者仍然存在以下区别:block的代码是内联的,效率高于函数调用block对于外部变量默认是只读属性block被Objective-C看成是对象处理   循环引用block

2017-01-10 09:36:20 309

原创 SDWebImage原理

在网上搜到一张SDWebImage原理思路图,如下:

2017-01-09 11:04:51 300

原创 NSURLSession

POST和GET的区别就在于request,所以使用session的POST请求和GET过程是一样的,区别就在于对request的处理.NSURLSessionConfiguration简单地说,就是session的配置信息.如:NSURLSessionConfiguration *config = [NSURLSessionConfiguration defaul

2017-01-06 10:38:17 244

原创 tableView

iOS8 , 自动计算Cell高度// 告诉tableView的真实高度是自动计算的,根据你的约束来计算self.tableView.rowHeight = UITableViewAutomaticDimension;// 告诉tableView所有cell的估计行高self.tableView.estimatedRowHeight = 44

2017-01-06 10:29:57 570

原创 FMDB

FMDB是iOS平台的SQLite数据库框架。FMDB以OC的方式封装了SQLite的C语言API项目中使用 ARC 还是 MRC,对使用 FMDB 都没有任何影响,FMDB 会在编译项目时自动匹配。在 FMDB 中有三个重要的类:FMDatabase:是一个提供 SQLite 数据库的类,用于执行 SQL 语句。FMResultSet:用在 FMDatabase 中执

2017-01-06 10:26:36 375

原创 电子科大杨宁TCPIP协议原理(总结)

本博文总结于电子科大杨宁TCPIP协议原理。视频地址:http://v.ku6.com/playlist/index_1735229.html 。反正我没看完,以下是我的总结。第一章1.1协议和标准协议:一组控制数据通信的规划。三要素:语法syntax、语义semantics、同步Timing (what、how、when)标准(standard):一致同意的规划。

2016-12-10 14:47:04 3212

原创 传输控件协议TCP

本篇博文总结于《计算机网络》。特点:面向连接的运输层协议;可靠交付;提供全双工通信;面向字节流。TCP连接的端点叫做套接字(socket)socket = (IP地址:端口号 )TCP报文段的首部格式 TCP可靠传输的实现滑动窗口,以字节为单位;超时重传时间的选择;选择确认SACK;TCP的流量控制利用

2016-12-10 14:37:54 432

原创 用户数据报协议UDP

本篇博文总结于《计算机网络》。概述:UDP只在IP的数据报服务之上增加了很少一点的功能,就是复用和公用的功能以及差错检测的功能。特点:无连接;尽最大努力付,不保证可靠交付;面向报文。首部格式:由四个字段组成,每个字段的长度都是两个字节。源端口:源端口号。在需要对方回信时选用,不需要时可用全0;目的端口:目的端口号。这在终点交付报文时必须要使用到。长度:UDP用户数据报的

2016-12-03 13:39:11 1362

原创 加密算法

http://www.ruanyifeng.com/blog/2014/05/oauth_2_0.html OAuth 2.0一、RSA1、随机两个不相等的质数p和q;2、欧拉函数: φ(n) = (p-1)(q-1);3、随机选择一个整数e,条件是14、计算e对于φ(n)的模反元素d,"模反元素"就是指有一个整数d,可以使得ed被φ(n)除的余数为1ed - 1

2016-09-30 15:40:06 252

原创 Git使用

一、github1、在终端获取sshssh-keygen -C '[email protected]' -t rss前往文件夹,用记事本拷贝2、登录github,进入setting,点击左边的SSH keys,粘贴SSH key,然后ADD key。验证是否成功,$ ssh -T [email protected]、设置用户信息$ git config --global

2016-09-30 15:38:34 217

原创 控件篇

textFrildplaceholder颜色[self.pwd setValue:[UIColor colorWithWhite:1 alpha:.5] forKeyPath:@"_placeholderLabel.textColor"];空字符不可点击enablesReturnKeyAutomatically  label行距NSMutab

2016-09-30 14:48:10 315

原创 设计模式

MVP把viewController 当成view,负责UI布局,而Presenter负责更新View的数据和状态。优点:测试性强,使而测试大多数业务逻辑变得简单。任务均摊,最主要的任务划分到Presenter和Model,而view的功能较少。缺点:代码量是MVC模式的2倍。MVVM: 利用双向绑定技术,使得Model变化时,ViewModel会自

2016-09-30 14:36:19 193

原创 巧招大杂会

ARC与MRC互转ARC项目添加MRC标记(-fno-objc-arc)MRC项目添加ARC标记(-fobjc-arc)获取UUIDNSString *idfv = [[[UIDevice currentDevice] identifierForVendor] UUIDString];宏定义:区分设备与模拟器#if TARGET_

2016-09-30 14:27:49 388

原创 CAAnimation 总结

核心动画中所有类都遵守CAMediaTiming协议。CAAnaimation是个抽象类,不具备动画效果,必须用它的子类才有动画效果。CAAnimationGroup和CATransition才有动画效果,CAAnimationGroup是个动画组,可以同时进行缩放,旋转(同时进行多个动画)。CATransition是转场动画,界面之间跳转(切换)都可以用转场动画。

2016-09-30 14:20:23 442

原创 线程

串行                                      并行                             主队列                      全局队列同步     主线程、阻塞                          主线程、阻塞                    死锁                     主线程、阻塞

2016-09-30 14:15:04 279

原创 RunLoop

最近学习到一位技术大牛的关于RunLoop的知识(博客地址:http://blog.ibireme.com/2015/05/18/runloop/ ),做了以下总结:RunLoop 的概念function loop() { initialize(); do { var message = get_next_message(); pro

2016-09-30 14:08:40 183

原创 Runtime

typedef struct objc_ivar *Ivar; struct objc_ivar { char *ivar_name OBJC2_UNAVAILABLE; // 变量名 char *ivar_type OBJC2_UNAVAILABLE; // 变量类型

2016-09-30 11:20:09 274

转载 调用系统打电话发短信接口以及程序内发短信

一、调用系统功能在iOS中打开系统本身的打电话和发短信功能还是比较简单的,之前在SSO中也提了一嘴,iOS中可以由一个应用打开另一个应用,只需要一行代码,打电话,发短信,发email,开网页也是一样的 ,只是用的协议不一样。1.打电话这个还是比较简单的,下面是打电话的代码:%@的内容是手机号self.myApplication是Application的单例。

2016-06-21 15:14:03 1764

转载 Xcode添加静态库以及编译选项配置常见问题

一,Xcode编译出现Link错误,出现"duplicate symbols for architecture i386 clang"提示.问题:链接时,项目有重名文件.解决:根据错误提示,做如下检查:1.Taraget->Build Settings->Link Binary With Libraries检查是否有重复lib.2.全工程搜索下重名文件,决定如何删除.二

2016-05-23 22:43:54 1267

转载 iOS获取设备信息总结

1、获取设备的信息[objc] view plain copy UIDevice *device = [[UIDevice alloc] int];  NSString *name = device.name;       //获取设备所有者的名称  NSString *model = device.name;      //获取设备的类

2016-04-14 10:42:46 445

转载 CoreAnimation动画入门(总结)

一.动画的基础分类1.png上述我们可以看到动画大体可以分为如下几类:属性说明CAAnaimation抽象类,不具备动画效果,必须用它的子类才有动画效果CAAnimaitionGroup动画组,可以同时进行缩放,旋转CAPropertyAnimation抽象类,本身不具备动画效果,只有子类才有CABasicAnim

2016-03-30 11:57:34 369

转载 iOSCoreAnimation动画系列教程(二):CAKeyFrameAnimation

在上一篇专题文章【原】iOSCoreAnimation动画系列教程(一):CABasicAnimation【包会】中我们学习了iOS核心动画CoreAnimation中CABasicAnimation动画的使用方法。CABasicAnimation已经可以应付一些比较简单的应用场景了,比如view的平移出现、淡入淡出等。但是在有些情况下直线的运动并不能满足我们的需要,因此有必要学习进阶版的核心动画

2016-03-30 11:46:43 218

转载 iOSCoreAnimation动画系列教程(一):CABasicAnimation

在iOS中,图形可分为以下几个层次:越上层,封装程度越高,动画实现越简洁越简单,但是自由度越低;反之亦然。本文着重介绍Core Animation层的基本动画实现方案。在iOS中,展示动画可以类比于显示生活中的“拍电影”。拍电影有三大要素:演员+剧本+开拍,概念类比如下:演员--->CALayer,规定电影的主角是谁剧本--->CAAnimation,规定电影该怎

2016-03-30 11:36:22 278

转载 将项目设置为MRC

在 xcode 中,设置 ARC 与 MRC 的地方:选中  Target,  在 Objective C language 地方,将 ARC 设为 YES 或 NO。 这是一个总开关。  如有特别的文件, 可以单独加上开关。  如何在未使用arc的工程中引入一个使用了arc特性的文件:选中工程->TARGETS->相

2016-03-15 21:00:20 456

转载 NSPredicate

简述:Cocoa框架中的NSPredicate用于查询,原理和用法都类似于SQL中的where,作用相当于数据库的过滤取。定义(最常用到的方法):[cpp] view plain copyNSPredicate *ca = [NSPredicate predicateWithFormat:(NSString *), ...];  

2016-03-15 09:40:25 172

转载 二维码自定义扫描界面

本次内容的效果图.h文件#import "RootViewController.h"@interface SQCodeViewController : RootViewController//继承根视图,主要继承根视图的导航控制器@end.m文件#import "

2016-03-11 10:17:05 916

转载 扫描二维码

#import"BZViewController.h"#import @interfaceBZViewController ()AVCaptureMetadataOutputObjectsDelegate>@property(strong,nonatomic)AVCaptureDevice*device;@property(strong,nona

2016-03-11 10:16:39 474

转载 生成二维码

1、通过字符串生成CIImage(首先是二维码的生成,使用CIFilter很简单,直接传入生成二维码的字符串即可:)- (CIImage*)createQRForString:(NSString*)qrString {   NSData *stringData = [qrString dataUsingEncoding:NSUTF8StringEncodin

2016-03-11 10:15:39 517

原创 iOS 掌握知识点

一、基础知识点1、内存管理2、category3、protocol4、block5、KVC/KVO二、核心技术1、字母索引 (百度云demo)2、地图 (百度云demo)3、音频4、蓝牙5、动画6、数据存储7、多线程8、相机9、coreImage 滤镜处理三、实用第三方1、上下拉刷新 (百度云demo)2、FMDB (

2016-03-10 18:18:03 311

原创 cocoaPods 安装与使用

1. 更新ruby终端输入如下命令(把Ruby镜像指向taobao,避免被墙,你懂得)gem sources --remove https://rubygems.org/ gem sources -a https://ruby.taobao.org/ gem sources -l  (用来检查使用替换镜像位置成功2、下载安装CocoaPods终端输入:sudo gem in

2016-03-10 17:26:20 335

转载 项目的完整重命名方法图文教程

前言:在iOS开发中,有时候想改一下项目的名字,都会遇到很多麻烦。直接改项目名吧,XCODE又不会帮你改所有的名字。总是有很多文件、文件夹或者是项目设置的项。而且都是不能随便改的,有时候改着改着,编译不了。所以各位重命名项目时,记得先备份好一份噢。本文我会介绍一种方法,是我自己参考了很多资料得出的总结。为什么说是完整呢?因为改名之后,你不会再看到任何有关于之前的项目名字。本文会把一

2016-03-10 17:25:42 2075

原创 iOS9请求https问题

iOS9 开始苹果将HTTP全改为HTTPS了,所以出现网络请求失败问题,解决办法:1、改回HTTP:    在info.plist文件中添加一个Key:NSAppTransportSecurity(字典类型),然后给它添加一个Key:NSAllowsArbitraryLoads(Boolean型),属性值设为YES.如下图:

2016-03-10 17:23:23 654

转载 文件操作(NSFileManager)

iOS的沙盒机制,应用只能访问自己应用目录下的文件。iOS不像android,没有SD卡概念,不能直接访问图像、视频等内容。iOS应用产生的内容,如图像、文件、缓存内容等都必须存储在自己的沙盒内。默认情况下,每个沙盒含有3个文件夹:Documents, Library 和 tmp。Library包含Caches、Preferences目录。             上面的完整路

2016-03-10 17:22:34 225

转载 创建Pch预编译文件

在Xcode6之前,创建一个新工程xcode会在Supporting files文件夹下面自动创建一个“工程名-Prefix.pch”文件,也是一个头文件,pch头文件的内容能被项目中的其他所有源文件共享和访问。是一个预编译文件。        首先说一下pch的作用:1.存放一些全局的宏(整个项目中都用得上的宏)2.用来包含一些全部的头文件(整个项目中都用

2016-03-10 17:20:54 339

转载 sizeThatFits and sizeToFit是UIView的两个方法

- (CGSize)sizeThatFits:(CGSize)size; 作用:return 'best' size to fit given size. does not actually resize view. Default is return existing view size - (void)sizeToFit; 作用: calls sizeThatF

2016-03-10 17:19:47 297

转载 Emoji 表情

开发表情键盘的思路        为了实现跨平台,无论iOS端,andorid端,都要有一个相同的标准,这个标准就可以是国际Unicode编码,我们的思路是将表情文字进行unicode编码后再进行传输,因此,有两中方式,一种是通过自定义一套表情切图,将其与unicode码一一对应,在转码的时候,我们一一遍历,转换成unicode后进行传输,这样的好处是我们可以保证所有平台所能使用的表情

2016-02-23 20:10:06 636

转载 AFMWorking 网络监听

//网络状态       typedef NS_ENUM(NSInteger, AFNetworkReachabilityStatus) {        AFNetworkReachabilityStatusUnknown          = -1,//未识别的网络        AFNetworkReachabilityStatusNotReachable     =

2016-02-23 15:40:41 268

转载 判断文本是否有Emoji表情

@implementation NSString (Emoji)+ (BOOL)stringContainsEmoji:(NSString *)string{ __block BOOL returnValue = NO; [string enumerateSubstringsInRange:NSMakeRange(0, [string length]) optio

2016-02-21 14:23:48 342

转载 8.0系统 UISearchController 使用

UISearchController实现搜索UISeachBar通过UISearchDisplayDelegate实现上面的效果是没有问题的,网上也有很多类似的实现效果,不过是警告的,信息如下: 'searchDisplayController' is deprecated: first deprecated in iOS 8.0,这么明显一个警告总不能视而不见吧 , 在 StackOve

2016-02-03 17:26:59 362

空空如也

空空如也

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

TA关注的人

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