<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[jesse881025的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/jesse881025</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; jesse881025]]></copyright><item><title><![CDATA[git 拉取远程指定分支 pull本地不存在的分支]]></title><link>https://blog.youkuaiyun.com/jesse881025/article/details/80313321</link><guid>https://blog.youkuaiyun.com/jesse881025/article/details/80313321</guid><author>jesse881025</author><pubDate>Mon, 14 May 2018 18:26:34 +0800</pubDate><description><![CDATA[默认，git项目只有一个分支，就是master,我们当然可以在本地创建多个分支，并推送到远程git管理平台上，或者将远程git管理平台上的其他分支拉取到自己电脑上。 一、查看本地已有的分支进入到项目根目录，打开命令行/终端，输入指令，将会显示该项目的本地的全部分支，其中、当前分支的前面有*号。二、本地检出一个新的分支并推送到远程仓库（一）.创建本地分支执行该指令后，会在本地创建一个新分支，该分支是...]]></description><category></category></item><item><title><![CDATA[git stash  命令]]></title><link>https://blog.youkuaiyun.com/jesse881025/article/details/80313039</link><guid>https://blog.youkuaiyun.com/jesse881025/article/details/80313039</guid><author>jesse881025</author><pubDate>Mon, 14 May 2018 18:24:45 +0800</pubDate><description><![CDATA[命令：git stash  保存现场，恢复现场1.使用git stash 保存当前的工作现场， 那么就可以切换到其他分支进行工作，或者在当前分支上完成其他紧急的工作，比如修订一个bug测试提交。 2.如果一个使用了一个git stash，切换到一个分支，且在该分支上的工作未完成也需要保存它的工作现场。再使用git stash。那么stash 队列中 就有了两个工作现场。 3.可以使用git sta...]]></description><category></category></item><item><title><![CDATA[iOS Xcode9 封装生成.framework]]></title><link>https://blog.youkuaiyun.com/jesse881025/article/details/79754100</link><guid>https://blog.youkuaiyun.com/jesse881025/article/details/79754100</guid><author>jesse881025</author><pubDate>Fri, 30 Mar 2018 10:42:23 +0800</pubDate><description><![CDATA[原文：http://www.cocoachina.com/ios/20180330/22849.html




iOS中.a与.framework库的区别

参考这篇文章http://www.cocoachina.com/ios/20161012/17730.html



从上面我们可以看出.a 和.framework的区别就是.a+.h+soureFile=.frame]]></description><category></category></item><item><title><![CDATA[导航栏下extendedLayoutIncludesOpaqueBars、automaticallyAdjustsScrollViewInsets等几个属性的详解]]></title><link>https://blog.youkuaiyun.com/jesse881025/article/details/79658486</link><guid>https://blog.youkuaiyun.com/jesse881025/article/details/79658486</guid><author>jesse881025</author><pubDate>Thu, 22 Mar 2018 19:19:31 +0800</pubDate><description><![CDATA[原文：http://www.cnblogs.com/SoulKai/p/5811296.html


与导航栏下控件的frame相关的edgesForExtendedLayout、translucent、extendedLayoutIncludesOpaqueBars、automaticallyAdjustsScrollViewInsets等几个属性的详解




　　在引入了导航]]></description><category></category></item><item><title><![CDATA[Swift - edgesForExtendedLayout属性介绍（元素被导航栏遮挡问题）]]></title><link>https://blog.youkuaiyun.com/jesse881025/article/details/79656897</link><guid>https://blog.youkuaiyun.com/jesse881025/article/details/79656897</guid><author>jesse881025</author><pubDate>Thu, 22 Mar 2018 17:15:37 +0800</pubDate><description><![CDATA[原文：http://www.hangge.com/blog/cache/detail_1519.html


从 iOS7 开始，ViewController 便使用全屏布局。同时引入了一个新属性 edgesForExtendedLayout，本文来讲讲 edgesForExtendedLayout 这个属性。
一、edgesForExtendedLayout属性介绍
1，默认值

]]></description><category></category></item><item><title><![CDATA[Swift3  JSON字符串和字典互转（JSON字符串转字典和字典转JSON字符串）]]></title><link>https://blog.youkuaiyun.com/jesse881025/article/details/79287118</link><guid>https://blog.youkuaiyun.com/jesse881025/article/details/79287118</guid><author>jesse881025</author><pubDate>Thu, 08 Feb 2018 10:49:18 +0800</pubDate><description><![CDATA[https://www.cnblogs.com/yajunLi/p/6549859.html




直接上代码吧

1、JSONString转换为字典



 /// JSONString转换为字典
    ///
    /// - Parameter jsonString: 
    /// - Returns: 
    func getDictionaryFromJ]]></description><category></category></item><item><title><![CDATA[干货集中营-ReactiveCocoa+RXSwift+MVVM]]></title><link>https://blog.youkuaiyun.com/jesse881025/article/details/79271189</link><guid>https://blog.youkuaiyun.com/jesse881025/article/details/79271189</guid><author>jesse881025</author><pubDate>Tue, 06 Feb 2018 15:37:07 +0800</pubDate><description><![CDATA[http://www.cocoachina.com/ios/20160729/17244.html







学习函数响应式编程已经接近两个月的时间。说实话坚持下来实在不易。两个月的时间看过近150篇博文，算下来啃下来一本千页的技术书籍也差不多。不过随着知识面的拓广，学习起来也更加顺利。本篇文章主要整理下自己收集的学习路线。其中包括了函数式编程的思想，ReactiveCocoa]]></description><category></category></item><item><title><![CDATA[iOS开发——常用的锁示例]]></title><link>https://blog.youkuaiyun.com/jesse881025/article/details/79203626</link><guid>https://blog.youkuaiyun.com/jesse881025/article/details/79203626</guid><author>jesse881025</author><pubDate>Tue, 30 Jan 2018 11:14:18 +0800</pubDate><description><![CDATA[原文：http://www.cocoachina.com/ios/20180129/22051.html




多线程场景不可避免需要使用锁来解决数据竞争、并发访问等问题，iOS 开发中，你会接触到各种各样的锁，不同的锁有不同的使用场景和性能差异。这里记录下各种锁及其使用方法，方便的大家查询使用。

自旋锁







1

2

3

4

5]]></description><category></category></item><item><title><![CDATA[Cocoa深入学习:NSOperationQueue、NSRunLoop和线程安全]]></title><link>https://blog.youkuaiyun.com/jesse881025/article/details/79065069</link><guid>https://blog.youkuaiyun.com/jesse881025/article/details/79065069</guid><author>jesse881025</author><pubDate>Mon, 15 Jan 2018 15:25:31 +0800</pubDate><description><![CDATA[原文：https://blog.cnbluebox.com/blog/2014/07/01/cocoashen-ru-xue-xi-nsoperationqueuehe-nsoperationyuan-li-he-shi-yong/



Cocoa深入学习:NSOperationQueue、NSRunLoop和线程安全


目前在 iOS 和 OS X 中有两套先进的同步 API ]]></description><category></category></item><item><title><![CDATA[GCD dispatch_semaphore]]></title><link>https://blog.youkuaiyun.com/jesse881025/article/details/79064715</link><guid>https://blog.youkuaiyun.com/jesse881025/article/details/79064715</guid><author>jesse881025</author><pubDate>Mon, 15 Jan 2018 15:04:35 +0800</pubDate><description><![CDATA[原文：http://www.cnblogs.com/zhidao-chen/p/3600399.html




dispatch_semaphore 信号量基于计数器的一种多线程同步机制。在多个线程访问共有资源时候，会因为多线程的特性而引发数据出错的问题。


    dispatch_queue_t queue
 = dispatch_get_global_queue(0, ]]></description><category></category></item><item><title><![CDATA[GCD dispatch_apply]]></title><link>https://blog.youkuaiyun.com/jesse881025/article/details/79064681</link><guid>https://blog.youkuaiyun.com/jesse881025/article/details/79064681</guid><author>jesse881025</author><pubDate>Mon, 15 Jan 2018 15:02:50 +0800</pubDate><description><![CDATA[原文：http://www.cnblogs.com/zhidao-chen/p/3599052.html




dispathc_apply 是dispatch_sync 和dispatch_group的关联API.它以指定的次数将指定的Block加入到指定的队列中。并等待队列中操作全部完成.


    NSArray *array = [NSArray arrayWithOb]]></description><category></category></item><item><title><![CDATA[GCD  dispatch_block_cancel]]></title><link>https://blog.youkuaiyun.com/jesse881025/article/details/79064279</link><guid>https://blog.youkuaiyun.com/jesse881025/article/details/79064279</guid><author>jesse881025</author><pubDate>Mon, 15 Jan 2018 14:34:59 +0800</pubDate><description><![CDATA[原文：http://blog.youkuaiyun.com/qq_33777090/article/details/78639224




第一种：dispatch_block_cancel


     iOS8之后可以调用dispatch_block_cancel来取消（需要注意必须用dispatch_block_create创建dispatch_block_t） 

     代码]]></description><category></category></item><item><title><![CDATA[GCD  dispatch_group]]></title><link>https://blog.youkuaiyun.com/jesse881025/article/details/79063829</link><guid>https://blog.youkuaiyun.com/jesse881025/article/details/79063829</guid><author>jesse881025</author><pubDate>Mon, 15 Jan 2018 14:02:35 +0800</pubDate><description><![CDATA[原文：http://www.cnblogs.com/zhidao-chen/p/3596981.html




如果想在dispatch_queue中所有的任务执行完成后在做某种操作，在串行队列中，可以把该操作放到最后一个任务执行完成后继续，但是在并行队列中怎么做呢。这就有dispatch_group 成组操作。比如


    dispatch_queue_t dispatch]]></description><category></category></item><item><title><![CDATA[GCD dispatch_barrier_async]]></title><link>https://blog.youkuaiyun.com/jesse881025/article/details/79063800</link><guid>https://blog.youkuaiyun.com/jesse881025/article/details/79063800</guid><author>jesse881025</author><pubDate>Mon, 15 Jan 2018 14:00:41 +0800</pubDate><description><![CDATA[原文：http://blog.youkuaiyun.com/u013046795/article/details/47057585




首先解释下标题里地括号是什么意思，GCD有个函数叫dispatch_barrier_async，还有个函数叫dispatch_barrier_sync，这个括号只是用来防止标题取得太长…>_

对于dispatch_barrier_async可能有的朋友没用]]></description><category></category></item><item><title><![CDATA[iOS设置圆角的四种方法]]></title><link>https://blog.youkuaiyun.com/jesse881025/article/details/79024913</link><guid>https://blog.youkuaiyun.com/jesse881025/article/details/79024913</guid><author>jesse881025</author><pubDate>Wed, 10 Jan 2018 16:00:22 +0800</pubDate><description><![CDATA[原文：http://blog.youkuaiyun.com/owensky999/article/details/52597657




一、设置CALayer的cornerRadius


cornerRadius属性影响layer显示的background颜色和前景框border，对layer的contents不起作用。故一个imgView(类型为UIImageView)的image不为]]></description><category></category></item><item><title><![CDATA[Enable Scribble，Enable Guard Edges，Enable Guard Malloc，Zombie Objects]]></title><link>https://blog.youkuaiyun.com/jesse881025/article/details/79024271</link><guid>https://blog.youkuaiyun.com/jesse881025/article/details/79024271</guid><author>jesse881025</author><pubDate>Wed, 10 Jan 2018 15:22:35 +0800</pubDate><description><![CDATA[原文：https://www.cnblogs.com/sunjianfei/p/7053289.html









最近项目中使用一个翻拍身份证信息识别活体检测的第三方框架，在使用时会偶然性的出现崩溃的现象，经过查找是因为第三方框架中有释放的内存区域再次引用引起的，因而补充一下相关知识点。




 

在Xcode Edit Scheme中有这样几个属性]]></description><category></category></item><item><title><![CDATA[OS 花式二维码生成和二维码识别]]></title><link>https://blog.youkuaiyun.com/jesse881025/article/details/78922323</link><guid>https://blog.youkuaiyun.com/jesse881025/article/details/78922323</guid><author>jesse881025</author><pubDate>Thu, 28 Dec 2017 15:03:55 +0800</pubDate><description><![CDATA[http://www.cocoachina.com/ios/20171227/21665.html




iOS 原生的二维码识别非常之棒，反正比 ZXing 和 ZBar 效果都好些，所以以后打算尽量用原生的二维码识别，然后最近把原生的二维码生成也顺便做了一遍，并且在原有基础上加了一些样式参数，封了一个小库方便以后使用。

项目地址：github.com/EyreFree/EF…]]></description><category></category></item><item><title><![CDATA[iOS Runtime详解(消息机制，类元对象，缓存机制，消息转发)]]></title><link>https://blog.youkuaiyun.com/jesse881025/article/details/78800873</link><guid>https://blog.youkuaiyun.com/jesse881025/article/details/78800873</guid><author>jesse881025</author><pubDate>Thu, 14 Dec 2017 11:34:13 +0800</pubDate><description><![CDATA[原文：http://blog.youkuaiyun.com/hello_hwc?viewmode=list 




前言：之前一篇文章里，我详细的讲解了一些基本关键词以及基本概念，这里再简要列出来，以防有些同学看不懂。

SEL 方法的名字，可以理解为字符串指针类型id 指向一个类的实例对象isa 每个类的示例对象都保存的指针，指向类对象Class 指向类对象

_cmd 每个OC方法都具]]></description><category></category></item><item><title><![CDATA[iOS Runtime详解之SEL,Class,id,IMP,_cmd,isa,method,Ivar]]></title><link>https://blog.youkuaiyun.com/jesse881025/article/details/78800834</link><guid>https://blog.youkuaiyun.com/jesse881025/article/details/78800834</guid><author>jesse881025</author><pubDate>Thu, 14 Dec 2017 11:30:02 +0800</pubDate><description><![CDATA[原文：http://blog.youkuaiyun.com/hello_hwc?viewmode=list 

前言：写了这么久的iOS博客，也是时候写写Rumtime的东西了，实际开发中用到的比较多的场景

动态改变方法的执行体Method SwizzlingNSSelectorFromString，NSClassFromString…动态添加属性（主要是类别）动态遍历属性和方法，动态为类添加方法]]></description><category></category></item><item><title><![CDATA[iOS监控-野指针定位]]></title><link>https://blog.youkuaiyun.com/jesse881025/article/details/78425041</link><guid>https://blog.youkuaiyun.com/jesse881025/article/details/78425041</guid><author>jesse881025</author><pubDate>Thu, 02 Nov 2017 15:01:09 +0800</pubDate><description><![CDATA[原文： http://www.cocoachina.com/ios/20171102/21026.html




野指针



当所指向的对象被释放或者收回，但是对该指针没有作任何的修改，以至于该指针仍旧指向已经回收的内存地址，此情况下该指针便称野指针


野指针异常堪称crash界的半壁江山，相比起NSException而言，野指针有这么两个特点：



随机性]]></description><category></category></item></channel></rss>