自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Privacy policy URL

The application respects and protects the privacy of all users of the service. In order to provide you with more accurate and personalized services, the application will use and disclose your personal...

2019-08-28 19:06:14 480

原创 隐私政策网址(URL)

本应用尊重并保护所有使用服务用户的个人隐私权。为了给您提供更准确、更有个性化的服务,本应用会按照本隐私权政策的规定使用和披露您的个人信息。但本应用将以高度的勤勉、审慎义务对待这些信息。除本隐私权政策另有规定外,在未征得您事先许可的情况下,本应用不会将这些信息对外披露或向第三方提供。本应用会不时更新本隐私权政策。 您在同意本应用服务使用协议之时,即视为您已经同意本隐私权政策全部内容。本隐私权政策属于...

2019-08-26 09:29:17 12919

原创 Xcode 8 插件不能使用的解决办法

在XCode 8及以后版本中,无法加载使用第三方插件,给个人开发造成了很大的困扰。通过查找,发现了一个可以一键更新所有插件的工具。 GitHub地址:https://github.com/inket/update_xcode_plugins 安装方法geminstallupdate_xcode_plugins 如果有报错: 则继续输入以下命令并执行,否则跳过此步。sudo gem instal

2017-09-14 15:57:09 777

原创 Xcode 8 插件不能使用的解决办法

在XCode 8及以后版本中,无法加载使用第三方插件,给个人开发造成了很大的困扰。通过查找,发现了一个可以一键更新所有插件的工具。GitHub地址:https://github.com/inket/update_xcode_plugins安装方法1geminstallupdate_xco

2017-09-14 15:54:26 1145

原创 MVVM动态计算Cell套TableView高度

demo下载地址:https://github.com/sunjie19921111/MVVM-Cell-TableView-Demo

2017-05-17 17:36:45 416

原创 ios json数据转plist文件

NSString *newPath = [NSString stringWithFormat:@"%@%@",[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0],@"/test.plist" ];NSLog(@"newPath = %@", newPath

2017-05-17 14:07:57 648

原创 iOS UIWindow的层级问题Level

每一个IOS程序都有一个UIWindow,在我们通过模板简历工程的时候,xcode会自动帮我们生成一个window,然后让它变成keyWindow并显示出来。这一切都来的那么自然,以至于我们大部分时候都忽略了自己也是可以创建UIWindow对象。  通常在我们需要自定义UIAlertView的时候(IOS 5.0以前AlertView的背景样式等都不能换)我们可以使用UIWindow来实现

2017-03-15 11:20:54 2691

原创 iOS Class 基础解释 (二)

Class 的含义Class 被定义为一个指向 objc_class的结构体指针,这个结构体表示每一个类的类结构。而 objc_class 在objc/objc_class.h中定义如下:struct objc_class {    struct objc_class super_class;  /*父类*/    const char *name;

2017-03-13 15:34:44 272

转载 iOS Class 基础解释(一)

Class类型   到目前为止,我们已经知道了对应于方法的SEL数据类型,和SEL同样在Objective-C里面我们不仅仅可以使用对应于方法的SEL,对于类在Objective-C也为我们准备了类似的机制,Class类型。当一个类被正确的编译过后,在这个编译成功的类里面,存在一个变量用于保存这个类的信息。我们可以通过一个普通的字符串取得 这个Class,也可以通过我们生成的对象取得这

2017-03-13 11:34:57 471

转载 SEL的简单解释

SEL就是对方法的一种包装。包装的SEL类型数据它对应相应的方法地址,找到方法地址就可以调用方法1.方法的存储位置在内存中每个类的方法都存储在类对象中每个方法都有一个与之对应的SEL类型的数据根据一个SEL数据就可以找到对应的方法地址,进而调用方法SEL类型的定义:  typedef struct objc_selector *SEL2.SEL对象的创建

2017-03-13 11:23:12 2166

转载 objc_property_attribute_t

获取一个属性的attributes[objc] view plain copy@interface person : NSObject  @property (nonatomic, strong) NSString *name;  @end    int main(){    unsigned int outCou

2017-03-13 11:00:47 519

原创 YYModel 源码解析

最近研究了一下YYModel的实现原理了,发表一下自己的理解,如果有什么不对的地方,请指教。标注图会上传到github如果有什么不对,或者不同的建议,欢迎和我讨论。 github:下载地址:https://github.com/sunjie19921111/YYModel-explain- 1. YYModel逻辑结构 2 . 结构体中三者的转化 (1) - (BOOL)modelSe

2017-03-11 16:49:38 856

原创 牛逼程序猿的学习之路

收藏(81)计算机系统与网络《图灵的秘密:他的生平、思想及论文解读》《计算机系统概论》《深入理解Linux内核》《深入Linux内核架构》《TCP/IP详解 卷1:协议》《Linux系统编程(第2版)》《Linux内核设计与实现(第3版)》《深入理解计算机系统(原书第2版)》《计算机程序的构造和解释(原书第2版)》《编码:隐匿在计算机软硬件背后的语言》《性能之颠:洞悉系统、企业与云计算

2017-03-06 18:55:03 320

原创 详解iOS cancelsTouchesInView delaysTouchesBegan delaysTouchesEnded

本文主要想讲的是触摸事件和手势混合使用的一个问题,但作为知识储备,还是把两者再单独介绍一下。两者的基本知识点都是iOS开发文档或者参考其他博客的,算是一个总结,文章最后会标出参考链接。iOS的事件有Touch Events、Motion Events、Remote Events,最常见的是触摸事件Touch Events。触摸事件除了是view来处理,还有高级的手势可以处理。所以,本文

2017-03-02 15:27:47 697

转载 Mac搭建nginx服务器搭建 +rtmp

最近因为在学习直播,前面遇到一个坑多的博客,坑了一天, 后面看到这个博客一下就解决掉了 渣渣博客害死人。开始:我个人电脑里面很早以前就搭建过nginx+rtmp服务器, 但是昨天在公司电脑上搭建的时候, 手动输入命令的时候, 还是出现了bug(所以, 建议大家直接复制命令, 不要手动输入命令). 所以记录一份详细的搭建步骤, 防止再次跳坑...12121. 打开终端, 查

2017-02-22 18:34:33 1773

转载 源码解析--YYCache

前言:准备看下YY系列中的YYWebImage框架,发现该框架是使用YYCache来做缓存的。那就从缓存开始吧.先奉上YYCache框架的地址以及作者的设计思路学习YYCache框架你可以get到:1.优雅的代码风格2.优秀的接口设计3.YYCache的层次结构4.YYMemoryCache类的层次结构和缓存机制5.YYDiskCache类的层次结构和缓存机制Y

2017-02-14 15:12:38 641

原创 CFSwapInt32HostToBig() 基础解析

CFSwapInt32HostToBig() 官方文档解析为将一个32位整数从主机的本机字节顺序大端格式  网络数据是大端字节序。客户可能是大端字节(例如PowerPC Mac)或小端字节序(例如x86 Mac)。因此确保你的代码字节顺序处理小尾数法)的平台上(例如x86)——这是一个空操作当然对大整数。大端(Big Endian)与小端(Little Endian

2017-02-09 10:53:45 4646

原创 iOS 手势冲突的问题

手势的3个混淆属性/** *  本节介绍tap的3个弄不太林清并且容易混淆的属性:   cancelsTouchesInView/delaysTouchesBegan/delaysTouchesEnded *   (0)首先要知道的是        1.这3个属性是作用于GestureRecognizers(手势识别)与触摸事件之间联系的属性

2017-01-12 18:24:57 642

原创 iOS 二维码 (包括扫描二维码,和读取二维码图片)

下载地址:https://github.com/sunjie19921111/SJQRCode使用说明:1.读取相册中的二维码只支持ios8以上的系统 2.扫码二维码支持ios7以上的系统QRCode(二维码扫描) 使用iOS系统自带框架,实现二维码的的扫描,代码主要分为三个模块,1.SJCameraViewController 配置相机属性 2. SJScanning

2016-12-13 16:28:11 453

原创 iOS语音通话(语音对讲)

因为项目需要做一个语音对讲功能,其实说白了就是类似QQ的语音通话,但是资料少之又少,研究了好久,才跟同事弄出一个粗略的版本。我记性不好,所以来记录一下,也希望能够帮助其他人。本来以为是要做语音对讲,类似微信的发送语音,我觉得这个还挺简单的,就是发送一个语音的文件,所以一开始用的是AVAudioPlayer,因为这个东西只能播放本地音频,而且非常简单。可是都快做好了,头头才说明白要的是语音通

2016-12-13 09:56:34 1850

原创 学习总结

带UIColor 是存在于 uikit 框架中CGColor和Calayer主要用于CoreGaphics框架之中CGColor主要由CGColorSapce和Color Components两个部分组成,同样的颜色组成,如果颜色空间不同的话,解析出来的结果可能会有所不同。这就像我们在处理图片数据的时候,如果把RGBA格式当成BGRA格式处理的结果可想而知。在Quartz 2D中CGCol

2016-12-09 17:34:00 1063

原创 iOS plist文件的增删查改

原文:http://www.cnblogs.com/xiaofeixiang/p/4263498.html?utm_source=tuicool&utm_medium=referralplist第一次看到这个后缀名文件的时候感觉怪怪的,不过接触久了也就习以为常了,plist是Property List的简称可以理解成属性列表文件,主要用来存储串行化后的对象的文件。扩展名为.pl

2016-11-28 17:15:38 720

转载 断言NSAssert()和NSParameterAssert区别和用处

NSAssert和assert是断言,主要的差别是assert在断言失败的时候只是简单的终止程序,而NSAssert会报告出错误信息并且打印出来.所以尽管的使用NSAssert,可以不去使用assert.iOS中用的最多的是两对断言, NSAssert/NSCAssert 和 NSParameterAssert/NSCparameterAssert. 要知道他们的区别,我们先来看看他们定义

2016-11-28 12:09:34 3655

原创 iOS 条形码和二维码详细解答

条形码的种类?如果正在标记零售产品, UPC-A是在美国和所使用的代码 EAN-13在世界的其余部分使用。如果要运送集装箱向美国政府,你需要坚持LOGMARS规格(使用Code39)。如果应用程序是严格供内部使用,你可以选择任何你想要的,你现在还是你永远都需要编码的字母和数字?如果是这样, Code39或 Code128将是一个不错的选择。如果你只需要数字, 5交错2会虽然做的工作守则

2016-11-23 14:38:59 1706

原创 IOS Runtime

什么是runtime(运行时机制)  Objective-C是基于C语言加入了面向对象特性和消息转发机制的动态语言,这意味着它不仅需要一个编译器,还需要Runtime系统来动态创建类和对象,进行消息发送和转发。    1.runtime是一套比较底层的纯C语言API, 属于1个C语言库, 包含了很多底层的C语言API。    2.平时编写的OC代码, 在程序运行过程中, 其

2016-11-22 18:21:09 243

原创 iOS 条形码不好扫的原因。

转自txx’s blog前言 这篇文章是我们在新发布的礼物说的iOS端开发过程中遇到的一些关于条形码的问题总结而来。本文记录的问题是:当AVFoundation使用多译码器扫描的时候。二维码是秒杀,但是条形码却经常扫不上。如果去掉二维码的话,条形码扫描又秒杀的问题。为什么我们没有选用ZXing而是用AVfoundation呢,是因为我说服了老板,iOS7开发,而不再去兼容iOS5/6。所以我们终于

2016-11-17 12:09:27 4385

原创 百度地图v3.0.0的sdk跟一些第三方库(MBProgressHUD、Reachability)冲突 解决方案

请下载v3.0.2修正版 链接: https://pan.baidu.com/s/1i5Gyvfn 密码: limx关于和地图sdk在模拟器下编译冲突的问题,有个临时解决方案: 可以把libbaiduNaviSDK.a移到“Linked Frameworks and Libraries”的最后一个,如图:

2016-11-09 10:59:06 955

原创 iOS CocoaPods安装教程

前言介绍在iOS项目中使用第三方类库可以说是非常常见的事,但是要正确地配置他们有时候是非常繁琐的事情,幸运的是CocoaPods是一个很好的解决方案。什么是CocoaPodsCocoaPods是OS X和iOS下的一个第三类库管理工具,通过CocoaPods工具我们可以为项目添加被称为“Pods”的依赖库(这些类库必须是CocoaPods本身所支持的),并且可以轻松管理其版

2016-11-04 09:35:38 610

原创 iOS 最新面试题(2)

1. RuntimeObjective-C 是面相运行时的语言(runtime oriented language),就是说它会尽可能的把编译和链接时要执行的逻辑延迟到运行时。这就给了你很大的灵活性,你可以按需要把消息重定向给合适的对象,你甚 至可以交换方法的实现,等等。RunTime简称运行时。就是系统在运行的时候的一些机制,其中最主要的是消息机制。OC的函数调用成为消息发送。属

2016-11-03 19:55:29 523

原创 iOS 最新面试题

1. 反转二叉树,不用递归/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */递归方式:

2016-11-03 19:53:59 1248

原创 iOS 如何追踪app

1.如何追踪app崩溃率,如何解决线上闪退当iOS设备上的App应用闪退时,操作系统会生成一个crash日志,保存在设备上。crash日志上有很多有用的信息,比如每个正在执行线程的完整堆栈跟踪信息和内存映像,这样就能够通过解析这些信息进而定位crash发生时的代码逻辑,从而找到App闪退的原因。通常来说,crash产生来源于两种问题:违反iOS系统规则导致的crash和App代码逻辑BUG导致的cr

2016-11-03 19:51:07 1514

原创 iOS AVPlayer支持播放的格式

avplayer支持的格式如下:支持视频格式: WMV,AVI,MKV,RMVB,RM,XVID,MP4,3GP,MPG …支持音频格式: MP3,WMA,RM,ACC,OGG,APE,FLAC,FLV…支持外部字幕: smi,srt,ass,sub,txt…AVPlayer是一个可以播放任何格式的全功能影音播放器,适应于iPho

2016-11-03 16:44:58 58545

原创 iOS开发你所知道的7个技巧

更多可到这里去了解

2016-11-03 16:01:59 279

转载 ios ffmpeg 3.0 编译安装

第 1 步1、下载FFmpeg最新版本:http://ffmpeg.org/download.html#build-mac2、下载gas-preprocessor.pl:https://github.com/libav/gas-preprocessor3、下载yasm最新版本:http://www.tortall.net/projects/yasm/releases/ 

2016-10-27 20:01:54 317

原创 xcode 一步导入.a文件

导入.a文件 看图。

2016-10-25 12:21:27 3851

转载 iOS: FFmpeg最新编译导入Xcode

我们此次入坑需要的工具:1、gas-preprocessor2、yasm 1.2.03、FFmpeg-iOS-build-script(ps:这个脚本真是业界良心呀,帮我们省下了不少心。)好了,刀已经有了,但是怎么优雅的使用出招式呢?慢慢来,博主力求详细的为大家分解每个步骤。1、下载gas-preprocessor。那么 gas-preprocessor

2016-10-25 12:17:21 2434

原创 iOS 沙盒目录详解

1、获取程序的Home目录      NSString  *path = NSHomeDirectory();      NSLog(@"path:%@",path);      打印结果:path:/Users/username/Library/Application Support/iPhone Simulator/5.1/Applications/BAE91297-A4C6-

2016-10-19 17:31:20 295

原创 Swift 字典(Dictionary)

字典是一种可以储存相同的类型多重数据储存其,每个值(value)都关联特定的健(key),健作为这个字典中的典型的标识符。和数组中的数组项不同,字典中的值是无序的,我们在需要通过标识符访问数据的时候使用字典,这和我们现实中的查字典是一样的。 Swift的字典使用时需要具体规定可以存储健值的类型,不同与OC的NSDictionary和NSMutableDictionary类可以使用任何类

2016-09-28 18:53:27 428

原创 Swift 数组(Array)

数组使用有序的列表储存相同类型的多重数据,相同的值可以出现在一个数组的不同位置中Swift对数组存储有具体的要求,不同于OC的NSArray和NSmutableArray类他们可以存储任何类型的实例而且不提供他们对象本质的任何的本质的信息,在swift中,数据值在呗存储进入某个数组之前类型必须明确,方法是通过显式的类型标注,或者类型的推断,而且必须不是Class类型。例如我们创建了一个

2016-09-27 18:23:49 568

原创 Swift 字符串

String 是一个有序的字符集合1.初始化空的字符串varemptyString = ""varanonterEmptyString = String() ifemptyString.isEmpty {   print("empty");} 字符串的可变性var string = "xiaoming"string += "and

2016-09-22 17:20:19 253

空空如也

空空如也

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

TA关注的人

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