<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[dyj1987chen的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/dyj1987chen</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; dyj1987chen]]></copyright><item><title><![CDATA[AsyncSocket]]></title><link>https://blog.youkuaiyun.com/dyj1987chen/article/details/52023074</link><guid>https://blog.youkuaiyun.com/dyj1987chen/article/details/52023074</guid><author>dyj1987chen</author><pubDate>Mon, 25 Jul 2016 14:10:00 +0800</pubDate><description><![CDATA[一.在项目引入AsyncSocket库步骤

  1.下载ASyncSocket库源码

  2.把ASyncSocket库源码加入项目：只需要增加RunLoop目录中的AsyncSocket.h、AsyncSocket.m、AsyncUdpSocket.h和AsyncUdpSocket.m四个文件。

  3.在项目增加CFNetwork框架。在Framework目录右健,选择Add]]></description><category></category></item><item><title><![CDATA[修改UITextfield的Placeholder字体的颜色]]></title><link>https://blog.youkuaiyun.com/dyj1987chen/article/details/51023615</link><guid>https://blog.youkuaiyun.com/dyj1987chen/article/details/51023615</guid><author>dyj1987chen</author><pubDate>Thu, 31 Mar 2016 10:00:30 +0800</pubDate><description><![CDATA[//第一种 

        UIColor *color = [UIColor
whiteColor];

        UITextField* _userName = [UITextField
new];

        _userName.attributedPlaceholder = [[NSAttributedString
alloc] 
initWithSt]]></description><category></category></item><item><title><![CDATA[CGPathCreateMutable 绘制]]></title><link>https://blog.youkuaiyun.com/dyj1987chen/article/details/51016225</link><guid>https://blog.youkuaiyun.com/dyj1987chen/article/details/51016225</guid><author>dyj1987chen</author><pubDate>Wed, 30 Mar 2016 16:19:24 +0800</pubDate><description><![CDATA[ios 图形与动画学习笔记 构造路径（CGPathCreateMutable）
一系列点放在一起，构成了一个形状。一系列的形状放在一起，构成了一个路径。


/*

     路径属于我们正在绘制他们的上下文。路径没有边界（Boundary）或特定的形状，不想我们使用路径绘制出来的形状。

     但路径没有边界框（Bounding boxes）. 此处，Boundary与Bou]]></description><category></category></item><item><title><![CDATA[UIview需要知道的一些事情：setNeedsDisplay、setNeedsLayout]]></title><link>https://blog.youkuaiyun.com/dyj1987chen/article/details/51015793</link><guid>https://blog.youkuaiyun.com/dyj1987chen/article/details/51015793</guid><author>dyj1987chen</author><pubDate>Wed, 30 Mar 2016 15:59:42 +0800</pubDate><description><![CDATA[1、在Mac OS中NSWindow的父类是NSResponder，而在i OS 中UIWindow 的父类是UIVIew。程序一般只有一个窗口但是会又很多视图。

2、UIView的作用：描画和动画，视图负责对其所属的矩形区域描画、布局和子视图管理、事件处理、可以接收触摸事件、事件信息的载体、等等。 

3、UIViewController 负责创建其管理的视图及在低内存的时候将他们从内]]></description><category></category></item><item><title><![CDATA[image叠加（UIGraphicsBeginImageContext）]]></title><link>https://blog.youkuaiyun.com/dyj1987chen/article/details/50549182</link><guid>https://blog.youkuaiyun.com/dyj1987chen/article/details/50549182</guid><author>dyj1987chen</author><pubDate>Wed, 20 Jan 2016 16:13:49 +0800</pubDate><description><![CDATA[-(UIImage*)image2{

    
//比如说我们现在有两张图片需要合并，是把一个滑稽的帽子放到一个人的头上。这里是两个UIImage：

    UIImage *radioImage = [UIImage
imageNamed:@"radio"];//kuang

    UIImage *switchImage = [UIImage
imageNamed:@"]]></description><category></category></item><item><title><![CDATA[发送验证码时设置UIButton的倒计时]]></title><link>https://blog.youkuaiyun.com/dyj1987chen/article/details/50343215</link><guid>https://blog.youkuaiyun.com/dyj1987chen/article/details/50343215</guid><author>dyj1987chen</author><pubDate>Thu, 17 Dec 2015 16:19:13 +0800</pubDate><description><![CDATA[#pragma mark

-(void)getYZMAction: (id)sender{

    ToastTool *tool = [ToastTool
shareToastTool];

    tool.message = 
@"验证码已发送！";

    [tool show];




        __block 
int timeout=60]]></description><category></category></item><item><title><![CDATA[偏好设置 NSUserDefaults]]></title><link>https://blog.youkuaiyun.com/dyj1987chen/article/details/47781017</link><guid>https://blog.youkuaiyun.com/dyj1987chen/article/details/47781017</guid><author>dyj1987chen</author><pubDate>Wed, 19 Aug 2015 15:17:30 +0800</pubDate><description><![CDATA[NSUserDefaults]]></description><category></category></item><item><title><![CDATA[controller里面函数的调用顺序]]></title><link>https://blog.youkuaiyun.com/dyj1987chen/article/details/46698719</link><guid>https://blog.youkuaiyun.com/dyj1987chen/article/details/46698719</guid><author>dyj1987chen</author><pubDate>Tue, 30 Jun 2015 17:58:41 +0800</pubDate><description><![CDATA[controller里面函数的调用顺序：



initWithNibName:bundle  /  initWithCode （如果使用storyboard）

loadView

viewDidLoad

viewWillAppear

viewWillLayoutSubviews

viewDidLayoutSubviews

viewDidAppear
]]></description><category></category></item><item><title><![CDATA[回调函数]]></title><link>https://blog.youkuaiyun.com/dyj1987chen/article/details/46275913</link><guid>https://blog.youkuaiyun.com/dyj1987chen/article/details/46275913</guid><author>dyj1987chen</author><pubDate>Sat, 30 May 2015 17:14:06 +0800</pubDate><description><![CDATA[做为初级选手，我们把Block、委托、回调函数，视为同一原理的三种不同名称。也就是说，现在，我们把这三个名词当成一回事。在这篇文章内，Block就是回调函数，委托也是回调函数，不再作详细的区分了。OK,Action!

那么，什么是回调函数？“回调”概念的主语是谁？

举个栗子（伪代码）：

首先有个类，我们姑且称之为A类吧。


A.h 文件

//声明回调函数：给指定的员工发]]></description><category></category></item><item><title><![CDATA[圆形头像]]></title><link>https://blog.youkuaiyun.com/dyj1987chen/article/details/46128469</link><guid>https://blog.youkuaiyun.com/dyj1987chen/article/details/46128469</guid><author>dyj1987chen</author><pubDate>Thu, 28 May 2015 20:33:12 +0800</pubDate><description><![CDATA[View有一个属性layer，通过设置cornerRadius来设置圆角的半径，view是正方形的才能保证通过调整圆角半径来形成圆形头像

 

第一种（常用）

 [view.layer setCornerRadius:CGRectGetHeight([view bounds])
 / 2];

 view.layer.masksToBounds = YES;

然后再给图]]></description><category></category></item><item><title><![CDATA[响应者链条（转）]]></title><link>https://blog.youkuaiyun.com/dyj1987chen/article/details/46051733</link><guid>https://blog.youkuaiyun.com/dyj1987chen/article/details/46051733</guid><author>dyj1987chen</author><pubDate>Wed, 27 May 2015 20:34:45 +0800</pubDate><description><![CDATA[响应者链条简单来说就是 :一级一级的找到响应的视图,如果没有就传给UIWindow实例和UIApplication实例,要是他们也处理不了,就丢弃这次事件...

对于IOS设备用户来说，他们操作设备的方式主要有三种：触摸屏幕、晃动设备、通过遥控设施控制设备。对应的事件类型有以下三种：

1、触屏事件（Touch Event）

2、运动事件（Motion Event）

3、远端]]></description><category></category></item><item><title><![CDATA[UICollectionView 初试总结]]></title><link>https://blog.youkuaiyun.com/dyj1987chen/article/details/46050959</link><guid>https://blog.youkuaiyun.com/dyj1987chen/article/details/46050959</guid><author>dyj1987chen</author><pubDate>Wed, 27 May 2015 19:42:09 +0800</pubDate><description><![CDATA[UICollectionView 和 UICollectionViewController 类是iOS6 新引进的API，用于展示集合视图，布局更加灵活，可实现多列布局，用法类似于UITableView 和 UITableViewController 类。

使用UICollectionView 必须实现UICollectionViewDataSource,UICollectionViewDe]]></description><category></category></item><item><title><![CDATA[socket编程]]></title><link>https://blog.youkuaiyun.com/dyj1987chen/article/details/46050939</link><guid>https://blog.youkuaiyun.com/dyj1987chen/article/details/46050939</guid><author>dyj1987chen</author><pubDate>Wed, 27 May 2015 19:39:57 +0800</pubDate><description><![CDATA[由于 iOS 设备通常是作为客户端，下文将演示如何编写客户端代码。先来总结一下客户端工作流程。

客户端调用 socket(...) 创建socket；客户端调用 connect(...) 向服务器发起连接请求以建立连接；客户端与服务器建立连接之后，就可以通过 send(...)/receive(...)向客户端发送或从客户端接收数据；客户端调用 close 关闭 socket；]]></description><category></category></item><item><title><![CDATA[二叉树]]></title><link>https://blog.youkuaiyun.com/dyj1987chen/article/details/46048257</link><guid>https://blog.youkuaiyun.com/dyj1987chen/article/details/46048257</guid><author>dyj1987chen</author><pubDate>Wed, 27 May 2015 16:14:45 +0800</pubDate><description><![CDATA[在计算机科学中，二叉树是每个节点最多有两个子树的树结构。通常子树被称作“左子树”（left subtree）和“右子树”（right subtree）。二叉树常被用于实现二叉查找树和二叉堆。

二叉树的每个结点至多只有二棵子树(不存在度大于2的结点)，二叉树的子树有左右之分，次序不能颠倒。二叉树的第i层至多有2^{i-1}个结点；深度为k的二叉树至多有2^k-1个结点；对任何一棵二叉树T，如果]]></description><category></category></item><item><title><![CDATA[(转）第三方框架-UI界面类项目]]></title><link>https://blog.youkuaiyun.com/dyj1987chen/article/details/46011057</link><guid>https://blog.youkuaiyun.com/dyj1987chen/article/details/46011057</guid><author>dyj1987chen</author><pubDate>Tue, 26 May 2015 17:54:00 +0800</pubDate><description><![CDATA[UI界面类项目：

Panoramagl—— 720全景展示

Panorama viewerlibraryfor iPhone, iPad and iPod touch

MBProgressHUD—— 进度指示

一种优雅的，半透明的进度显示效果。同时还提供了其他附加功能，比如显示完成信息并淡出。

iCarousel—— 效果很酷的分页排列

内容类似的页面需要并排列]]></description><category></category></item><item><title><![CDATA[UITableViewCell的自定义]]></title><link>https://blog.youkuaiyun.com/dyj1987chen/article/details/46010899</link><guid>https://blog.youkuaiyun.com/dyj1987chen/article/details/46010899</guid><author>dyj1987chen</author><pubDate>Tue, 26 May 2015 17:40:03 +0800</pubDate><description><![CDATA[介绍两种方法


第一种，

简单的增加UITableViewCell一些小功能，例如在cell上面添加一个UILabel。

直接在UITableViewCell的生成方法中实现，代码如下

- (UITableViewCell *)tableView:(UITableView *)tableView

cellForRowAtIndexPath:(NSIndexPath ]]></description><category></category></item><item><title><![CDATA[iOS沙盒机制]]></title><link>https://blog.youkuaiyun.com/dyj1987chen/article/details/46007115</link><guid>https://blog.youkuaiyun.com/dyj1987chen/article/details/46007115</guid><author>dyj1987chen</author><pubDate>Tue, 26 May 2015 13:57:29 +0800</pubDate><description><![CDATA[iOS沙盒机制

 iOS应用程序只能在为该改程序创建的文件系统中读取文件，不可以去其它地方访问，此区域被成为沙盒，所以所有的非代码文件都要保存在此，例如图像，图标，声音，映像，属性列表，文本文件等。

 1.1、每个应用程序都有自己的存储空间
 1.2、应用程序不能翻过自己的围墙去访问别的存储空间的内容
 1.3、应用程序请求的数据都要通过权限检测，假如不符合条件的话，不会被放行。]]></description><category></category></item><item><title><![CDATA[关于公文签名的实现逻辑]]></title><link>https://blog.youkuaiyun.com/dyj1987chen/article/details/45974217</link><guid>https://blog.youkuaiyun.com/dyj1987chen/article/details/45974217</guid><author>dyj1987chen</author><pubDate>Mon, 25 May 2015 20:41:46 +0800</pubDate><description><![CDATA[Quartz 2D 
pdf转图片，图片加水印功能，输出pdf文件！慢慢写！]]></description><category></category></item><item><title><![CDATA[解压缩工具-SSZipArchive]]></title><link>https://blog.youkuaiyun.com/dyj1987chen/article/details/45821863</link><guid>https://blog.youkuaiyun.com/dyj1987chen/article/details/45821863</guid><author>dyj1987chen</author><pubDate>Mon, 18 May 2015 14:16:01 +0800</pubDate><description><![CDATA[SSZipArchive是开源的实现压缩和解压缩的第三方类库。此方案最简单快捷。下载地址：https://github.com/soffes/ssziparchive


SSZipArchive功能：



解压zip文件解压密码保护的zip文件创建zip文件追加到zip文件压缩文件使用一个名字来压缩NSData  
在使用前，我们需要做两步操作：
1.把SSZipArchiv]]></description><category></category></item><item><title><![CDATA[设计方法-迪米特法则]]></title><link>https://blog.youkuaiyun.com/dyj1987chen/article/details/45788465</link><guid>https://blog.youkuaiyun.com/dyj1987chen/article/details/45788465</guid><author>dyj1987chen</author><pubDate>Sun, 17 May 2015 14:07:29 +0800</pubDate><description><![CDATA[定义：

迪米特法则（Law of Demeter，LoD）也称为最少知识原则（Least Knowledge Principle，LKP）。

一个对象应该对其他对象有最少的了解。通俗地讲，一个类应该对自己需要耦合或调用的类知道得最少，你（被耦合或调用的类）的内部是如何复杂都和我没关系，那是你的事情，我就知道你提供的public方法，我就调用这么多，其他的一概不关心。



迪米]]></description><category></category></item></channel></rss>