<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[yangliu16的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/yangliu16</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; yangliu16]]></copyright><item><title><![CDATA[UIView的layoutSubviews和drawRect方法何时调用]]></title><link>https://blog.youkuaiyun.com/yangliu16/article/details/71514811</link><guid>https://blog.youkuaiyun.com/yangliu16/article/details/71514811</guid><author>yangliu16</author><pubDate>Wed, 10 May 2017 10:09:13 +0800</pubDate><description><![CDATA[转自：http://jianyu996.blog.163.com/blog/static/112114555201305113018814/
首先两个方法都是异步执行。layoutSubviews方便数据计算，drawRect方便视图重绘。

 


 

layoutSubviews在以下情况下会被调用：

 

1、init初始化不会触发layoutSubviews。]]></description><category></category></item><item><title><![CDATA[移动App架构设计]]></title><link>https://blog.youkuaiyun.com/yangliu16/article/details/71077833</link><guid>https://blog.youkuaiyun.com/yangliu16/article/details/71077833</guid><author>yangliu16</author><pubDate>Tue, 02 May 2017 10:04:27 +0800</pubDate><description><![CDATA[移动App架构设计

本文主要总结了几种常用的架构模式, 基本是层层递进的 转载请注名出处 http://blog.youkuaiyun.com/uxyheaven

Native app的开发相比传统的项目迭代周期要短很多, 需求的变化也频繁一些, 在开发的不同生命周期里采用不同的架构模式可以有效的节约开发时间, 提高开发效率, 这篇文章介绍几种常用的架构模式:

表现层的设计

基本的MV]]></description><category></category></item><item><title><![CDATA[iOS - 教你制作SDK和.a静态库]]></title><link>https://blog.youkuaiyun.com/yangliu16/article/details/70739128</link><guid>https://blog.youkuaiyun.com/yangliu16/article/details/70739128</guid><author>yangliu16</author><pubDate>Tue, 25 Apr 2017 14:36:15 +0800</pubDate><description><![CDATA[转载自：http://blog.youkuaiyun.com/boring_cat/article/details/52807294







公司近期和其他公司合作 其他公司需要我们提供一个sdk等供给他们公司的员工进行二次开发。 
之前没接触过，但人嘛，进步都是被逼的，今日就写了一个小demo来说说如何制作.a文件的静态库。

写在前面的话，什么是库？ 
库就是封装好功能的程序]]></description><category></category></item><item><title><![CDATA[iOS逆向工程之class-dump]]></title><link>https://blog.youkuaiyun.com/yangliu16/article/details/70537162</link><guid>https://blog.youkuaiyun.com/yangliu16/article/details/70537162</guid><author>yangliu16</author><pubDate>Sun, 23 Apr 2017 18:43:39 +0800</pubDate><description><![CDATA[最近研究一些iOS逆向工程的知识，发现自己对iOS的了解还有很大的局限。逆向工程会用到很多工具，class-dump便是其中之一。
class-dump，顾名思义就是用来dump目标对象的class信息的工具，它利用的是Objective-C语言的runtime特性，将储存在Mach-O文件的头文件信息取出来，并生成对应的.h文件。下面介绍一下它的使用：
首先去点击打开链接下载最新版class]]></description><category></category></item><item><title><![CDATA[NSProxy学习]]></title><link>https://blog.youkuaiyun.com/yangliu16/article/details/70215827</link><guid>https://blog.youkuaiyun.com/yangliu16/article/details/70215827</guid><author>yangliu16</author><pubDate>Mon, 17 Apr 2017 21:07:42 +0800</pubDate><description><![CDATA[NSProxy学习

 NSProxy是Objective-C中大部分类的基类，这个类是有什么用？Apple的官方文档是这样介绍的：

NSProxy is an abstract superclassdefining an API for objects that act as stand-ins for other objects or forobjects that don’t ex]]></description><category></category></item><item><title><![CDATA[UIView你知道多少]]></title><link>https://blog.youkuaiyun.com/yangliu16/article/details/54288473</link><guid>https://blog.youkuaiyun.com/yangliu16/article/details/54288473</guid><author>yangliu16</author><pubDate>Mon, 09 Jan 2017 14:12:13 +0800</pubDate><description><![CDATA[曾经有人这么说过，在iphone里你看到的，摸到的，都是UIView，所以UIView在iphone开发里具有非常重要的作用。那么UIView我们到底知道多少呢。请看看下面的问题，

如果这些你都知道，那么本文章的内容就请绕道，如果你还不太清楚，我想看了下面的内容，你就明白了。

1。bounds和frame分别表示什么？

2。ContentMode里UIViewContentMod]]></description><category></category></item><item><title><![CDATA[Objective-C Associated Objects 的实现原理]]></title><link>https://blog.youkuaiyun.com/yangliu16/article/details/53606813</link><guid>https://blog.youkuaiyun.com/yangliu16/article/details/53606813</guid><author>yangliu16</author><pubDate>Tue, 13 Dec 2016 10:17:13 +0800</pubDate><description><![CDATA[我们知道，在 Objective-C 中可以通过 Category 给一个现有的类添加属性，但是却不能添加实例变量，这似乎成为了 Objective-C 的一个明显短板。然而值得庆幸的是，我们可以通过
 Associated Objects 来弥补这一不足。本文将结合 runtime 源码深入探究 Objective-C 中 Associated Objects 的实现原理。

在阅读本文的]]></description><category></category></item><item><title><![CDATA[iOS的常用运算函数]]></title><link>https://blog.youkuaiyun.com/yangliu16/article/details/53542305</link><guid>https://blog.youkuaiyun.com/yangliu16/article/details/53542305</guid><author>yangliu16</author><pubDate>Fri, 09 Dec 2016 17:36:10 +0800</pubDate><description><![CDATA[介绍一下Objective-c常用的函数，常数变量

算术函数

【算术函数】



函数名
说明





int rand()

随机数生成。
（例）
srand(time(nil));　//随机数初期化
int val = rand()P;　//0～49之间的随机数



int abs(int a)

整数的绝对值
（例）int val]]></description><category></category></item><item><title><![CDATA[AFNetwoking返回error信息添加到body里]]></title><link>https://blog.youkuaiyun.com/yangliu16/article/details/53240944</link><guid>https://blog.youkuaiyun.com/yangliu16/article/details/53240944</guid><author>yangliu16</author><pubDate>Sun, 20 Nov 2016 14:58:30 +0800</pubDate><description><![CDATA[AFNetwoking对网络请求的封装已经非常好了，但我们对接口的处理变化比较大，有时候就会有一些不足的地方，比如说返回200以外的状态码以及解析返回的json，就会遇到一些问题。下面的一种方法可以解决以上问题，通过创建继承自AFJSONResponseSerializer的一个类来实现。]]></description><category></category></item><item><title><![CDATA[iOS多线程之GCD]]></title><link>https://blog.youkuaiyun.com/yangliu16/article/details/53200508</link><guid>https://blog.youkuaiyun.com/yangliu16/article/details/53200508</guid><author>yangliu16</author><pubDate>Thu, 17 Nov 2016 15:19:23 +0800</pubDate><description><![CDATA[介绍：
GCD，全称Grand
 Central Dispatch，是苹果公司开发的技术，以优化的应用程序支持多核心处理器和其他的对称多处理系统的系统。这建立在任务并行执行的线程池模式的基础上的。它首次发布在Mac OS X 10.6 ，iOS 4及以上可用。



设计：
GCD的工作原理是：让程序平行排队的特定任务，根据可用的处理资源，安排他们在任何可用的处理器核心上执行任务。]]></description><category></category></item><item><title><![CDATA[UIWebView的加载方式及获得动态高度的方法]]></title><link>https://blog.youkuaiyun.com/yangliu16/article/details/52680241</link><guid>https://blog.youkuaiyun.com/yangliu16/article/details/52680241</guid><author>yangliu16</author><pubDate>Tue, 27 Sep 2016 14:05:39 +0800</pubDate><description><![CDATA[UIWebView加载数据3种方法

1.- (void)loadRequest:(NSURLRequest *)request;

    NSURL *url = [NSURL URLWithString:urlString];
    NSURLRequest *request = [NSURLRequest requestWithURL:url];
    [self.webVie]]></description><category></category></item><item><title><![CDATA[iOS开发 适配iOS10以及Xcode8]]></title><link>https://blog.youkuaiyun.com/yangliu16/article/details/52661786</link><guid>https://blog.youkuaiyun.com/yangliu16/article/details/52661786</guid><author>yangliu16</author><pubDate>Sun, 25 Sep 2016 13:54:07 +0800</pubDate><description><![CDATA[现在在苹果的官网上，我们已经可以下载到Xcode8的GM版本了，加上9.14日凌晨，苹果就要正式推出iOS10系统的推送了，在此之际，iOS10的适配已经迫在眉睫啦，不知道Xcode8 beat版本，童鞋们有木有下载过来试试呢？就我的使用来说，总体觉得苹果还是坑不断，但是也在一直进步的啦。下面我就来说说，iOS10的适配以及Xcode8使用上的一些注意点。


一、证书管理

用Xcod]]></description><category></category></item><item><title><![CDATA[苹果手机有时候app无法联网的问题]]></title><link>https://blog.youkuaiyun.com/yangliu16/article/details/52608810</link><guid>https://blog.youkuaiyun.com/yangliu16/article/details/52608810</guid><author>yangliu16</author><pubDate>Wed, 21 Sep 2016 15:41:46 +0800</pubDate><description><![CDATA[今天遇到一特奇葩的问题，产品经理要iOS的app测试版，结果安装了以后app显示无法连接网络，刚升级iOS10还以为是系统的问题，找了半天，还是不行。以为是程序问题，考虑方向错了，一下一个方法也许能解决。
手机连不上网络，通常会认为是wifi，或者是数据网路对于那一个软件关闭了，去无线局域网或者数据网路把他打开就行，可是往往里面没有那个无法上网的软件，蛋疼了，此时，随便将其他任何一个能上网的软件]]></description><category></category></item><item><title><![CDATA[关于内存管理思考方式的一些学习总结]]></title><link>https://blog.youkuaiyun.com/yangliu16/article/details/52563314</link><guid>https://blog.youkuaiyun.com/yangliu16/article/details/52563314</guid><author>yangliu16</author><pubDate>Sat, 17 Sep 2016 15:21:47 +0800</pubDate><description><![CDATA[关于内存管理思考方式的一些学习总结谈到内存管理首先想到的是“引用计数”这个名称，但真正正确客观的去思考这个问题，应该先理解以下几点：
自己生成的对象，自己所持有
非自己生成的对象，自己也能持有
不再需要自己持有的对象时释放
非自己持有的对象无法释放下面我们看一下对象操作对应的表格  对象方法
  OC方法  生成并持有的对象
  alloc/new/copy/mutableCopy等方法
  持有的]]></description><category></category></item><item><title><![CDATA[通过setTitleEdgeInsets和setImageEdgeInsets改变UIBtton文本图片位置]]></title><link>https://blog.youkuaiyun.com/yangliu16/article/details/52513376</link><guid>https://blog.youkuaiyun.com/yangliu16/article/details/52513376</guid><author>yangliu16</author><pubDate>Mon, 12 Sep 2016 14:42:28 +0800</pubDate><description><![CDATA[UIButton内部文本和图片的布局是我们日常代码中，不可缺少的部分，按钮默认左边图片右边文本，那要实现左边文本右边图片，上面图片下面文本和上面文本下面图片该怎么办呢？
setTitleEdgeInsets和setImageEdgeInsets方法的好处就是不要在重写UIButton，直接在新建的UIButton中改变上面两个属性的值就可以达到我们想要的结果
左边文本右边图片
-(UIBut]]></description><category></category></item><item><title><![CDATA[iOS FontFamily]]></title><link>https://blog.youkuaiyun.com/yangliu16/article/details/52486467</link><guid>https://blog.youkuaiyun.com/yangliu16/article/details/52486467</guid><author>yangliu16</author><pubDate>Fri, 09 Sep 2016 14:00:20 +0800</pubDate><description><![CDATA[UIFont fontWithName 后不知道字体的名字,看了下面的全解决！



 

本文出自 “技术成就梦想” 博客，请务必保留此出处http://285746555.blog.51cto.com/2966432/587897]]></description><category></category></item><item><title><![CDATA[iOS中的计时器]]></title><link>https://blog.youkuaiyun.com/yangliu16/article/details/52452515</link><guid>https://blog.youkuaiyun.com/yangliu16/article/details/52452515</guid><author>yangliu16</author><pubDate>Tue, 06 Sep 2016 18:39:19 +0800</pubDate><description><![CDATA[iOS中定时器有三种，分别是NSTimer、CADisplayLink、dispatch_source，下面就分别对这三种计时器进行说明


一、NSTimer



创建方法







1




NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selec]]></description><category></category></item><item><title><![CDATA[CocoaPods的安装使用及遇到的问题]]></title><link>https://blog.youkuaiyun.com/yangliu16/article/details/52449648</link><guid>https://blog.youkuaiyun.com/yangliu16/article/details/52449648</guid><author>yangliu16</author><pubDate>Tue, 06 Sep 2016 14:25:43 +0800</pubDate><description><![CDATA[现在开发都会在项目中集成CocoaPods，一般情况下网上的参考步骤就可以了，但可能是新电脑的原因吧，集成的时候淘宝镜像不好使了，就自己找了一些方法，还有就是安装的时候遇到的问题。
   

正常步骤

（1）使用淘宝的Ruby镜像替换官方的ruby源，在终端输入命令

$ gem sources --remove https://rubygems.org/

$ gem sou]]></description><category></category></item><item><title><![CDATA[SDWebImage的原理]]></title><link>https://blog.youkuaiyun.com/yangliu16/article/details/52422467</link><guid>https://blog.youkuaiyun.com/yangliu16/article/details/52422467</guid><author>yangliu16</author><pubDate>Sat, 03 Sep 2016 12:13:23 +0800</pubDate><description><![CDATA[这个类库提供一个UIImageView类别以支持加载来自网络的远程图片。具有缓存管理、异步下载、同一个URL下载次数控制和优化等特征。

SDWebImage 加载图片的流程

1.入口 setImageWithURL:placeholderImage:options: 会先把 placeholderImage 显示，然后 SDWebImageManager 根据 URL 开始处理图片。]]></description><category></category></item></channel></rss>