自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(129)
  • 资源 (83)
  • 收藏
  • 关注

原创 NSDictionary不区分大小写key读取value

为 NSDictionary 增加 category ,并新增一个根据key读取value的方法:- (id)ObjForKey:(NSString *)key { if (!key || ![key isKindOfClass:[NSString class]] || key.length <= 0) { return nil; } id v ...

2020-03-20 16:07:13 922

原创 iOS如何实现类似安卓的.9图效果

如题:大家应该都知道安卓经常用.9图吧?而iOS却没有.9图这种东西。其实iOS比安卓更牛逼,安卓需要找UI做个.9图,而很多刚入行的UI压根都不会做.9图。iOS只需要一行代码就能实现.9图的效果。这行代码就是:- (UIImage *)stretchableImageWithLeftCapWidth:(NSInteger)leftCapWidth topCapHeight:(NSI...

2019-03-01 11:51:33 2380

原创 Git cherry-pick 使用总结

假设:假设我们有 branch_01 和 branch_02 两个开发分支,那么我们怎么把 branch_01 上的一个或者几个commit合并到 branch_02 上呢?假设 branch_01 有如下两个commit的hash值59e7e6545a2eda9b82f5795173792e6490c9cd1321b385c03a032d90102f1c8321f7858ff8...

2018-09-11 20:11:18 5773

原创 do{}while(false)

do while 语法:众所周知,do  while 循环是执行一遍do{} 里面的代码然后,再去while()判断条件是否为真,为真继续执行do{}里面的代码,否则就跳出循环。当然我们也可以采用 break 跳出循环,也可以采用 continue 结束本次循环开始下一次循环。do { //执行的任务 } while (); //判断条件是否为真do{}wh...

2018-08-31 15:38:53 5121 4

原创 Gerrit出现 Submitted, Merge Pending 的解决办法

Gerrit出现 Submitted, Merge Pending 一、出现这种情况的原因:先是commit1了一次,然后又commit2了一次,由于第一次commit没有去gerrit上submit,导致以后的commit都无法submit了。二、解决办法:先查看本地Git命令历史:git reflog然后在回滚到第一次commit1时的地方:git reset ...

2018-08-02 16:43:15 5535

原创 算法笔记--快速排序

基本思想:将当前待排序列分成两个部分、一个值。一个值:就是选定出一个值作为被比较的元素(基准数)。两个部分:所有比该被选定元素大的部分都去该元素的右边,所有比被选定元素小的部分都去该元素的左边。这样我们就确定了该元素在这个待排序列中的位置,其实也就是我们已经将这个元素“排好了”。举例:快速排序的每一轮处理其实就是将着一轮的基准数归位,直到所有的数都归位为止,排序就结束了。算法实现:int main...

2018-02-12 16:08:51 316

原创 算法笔记--冒泡排序

基本思想:冒泡排序的基本思想是:每次比较两个相邻的元素,如果它们的顺序错误就把它们交换过来。时间复杂度O(N*N)算法实现://**【冒泡排序】**//void bubbleSort() { int a[10], i, j, n, t; scanf("%d", &amp;n); for (i = 0; i &lt; n; ++i) { scanf("%d"...

2018-02-12 14:46:09 216

原创 算法笔记--简单桶排序

题目:假设班上有5个同学,这学期期末考试,这5个同学分别考了5分、3分、5分、2分、8分,满分是10分。接下来将分数从大到小排序,排序后是8 5 5 3 2。实现://**【简单桶排序】**//void simpleBarrelSort() { int a[11], i, j, t; for (i = 0; i &lt; 11; ++i) { a[i] = 0;...

2018-02-12 14:24:24 323

原创 Mapbox使用详解

一、简介:Mapbox致力于打造全球最漂亮的个性化地图。在一次偶然的地图相关资料搜索过程中发现了一个很神奇又很漂亮的地图,这个地图支持高度自定义各种地图元素,比如,道路,水系,绿地,建筑物,背景色,等等。Mapbox打造的Mapbox studio地图制作虚拟工作室,就是一个很完美的地图元素个性化编辑器。另外,我们也可以把自己项目的地理信息数据上传到Mapbox云端,然

2018-01-31 13:11:08 81602 13

原创 oc和swift实现算法:把 x 数字精确到小数点后第 p 位,不足 p 位补 0,然后四舍五入

题目:把 x 数字精确到小数点后第 p 位,不足 p 位补 0,然后四舍五入用Objective-C实现:///把 x 数字精确到小数点后第 p 位,不足 p 位补 0,然后四舍五入- (NSString *)number:(NSString *)x preciseDecimal:(NSUInteger)p {// 四舍五入 NSDecimalNu

2018-01-12 18:00:29 2062

原创 oc和swift实现算法:一个人a年b月c日出生,a,b,c三数的乘积为428575,这个人是什么时候出生的?

题目:一个人a年b月c日出生,a,b,c三数的乘积为428575,这个人是什么时候出生的?用Object-C实现://一个人a年b月c日出生,a,b,c三数的乘积为428575,这个人是什么时候出生的?- (void)p_caclueYearMonthDay { //获取当前年月日 NSDate *date = [NSDate date]; NSDateF

2018-01-11 17:27:29 1102

原创 GCD多线程之多任务并发等待所有任务完成

在实际项目中我们经常会遇到,发出多个网络请求,然后等待所有结果都返回后,再进行下一步操作的需求。那么GCD完美的解决了这个样的需求。第一种方式: //创建队列组 dispatch_group_t group = dispatch_group_create(); dispatch_group_async(group, dispatch_get_global_queue

2018-01-10 18:38:00 3482

原创 iOS 自动化单元测试--XCTest

一、前言:UITest的单元测试能最大限度的解放测试妹妹的双手,当然也会给程序员带来巨大工作量,完整的测试代码估计是项目代码的两倍,另外大家可以自行百度 Xcode Coverage 查看测试代码覆盖率,这篇文章只讲如何在工程中用XCTest框架做单元测试。 其中主要介绍了,用六个按钮示意的UITests使用和性能测试、异步测试的。二、创建工程:先创建个名字为 XCTest 的示例工程: 这

2017-11-25 15:39:12 2069 1

转载 iOS runtime进行数据解析封装

废话不说直接上代码…代码才是最给力的#import <Foundation/Foundation.h>@interface BPQNetworkingResult : NSObject@property (nonatomic,strong)id Data;@property (nonatomic,strong)NSNumber *Code;@property (nonatomic,strong

2017-10-31 11:04:26 572

转载 BAHome:iOS 面试题收藏录

由于很多同学在面试中总是被噱,群里很多同学都要求整理一份经典的 iOS 面试题,所以,博爱就在简书开了一份面试题收藏录,专门收藏 iOS 面试的经典题目,希望能够给各位 iOS coder 一些帮助,也祝大家能够早点面试成功,顺利进入自己理想的公司! **1、把 “www.zhidao.baidu.com” 这样的字符串改成 “com/baidu/zhidao/www”** 此题目来自百度的面试

2017-10-30 13:39:36 449

原创 iOS 11 适配笔记

一、定位权限:无论是iOS11还是之前的系统版本,定位权限总共就三种:“永不”、“使用应用期间”、“始终” 之前的iOS 10的定位权限是Privacy - Location Always Usage Description //始终Privacy - Location Usage Description //允许定位Privacy - Location When In Use Usag

2017-10-11 17:10:43 898

转载 iOS开发 | 热点适配完美攻略

开始:当手机热点开启并被其他设备接入时,状态栏会比普通状态下多20px,此时整个视图控制器会被向下推20px,推出屏幕。如果不做相应处理必然会带来糟糕的用户体验,如下,两张对比图(注意下方的tabBar):这是优化前的效果;这是优化后的效果; 那么,针对这种特殊情况我们应该怎样处理呢?基本思路:既然是状态栏的高度变化导致的,那就监听状态栏高度的变化,每当状态栏高度发生变化就发送一个通知,通知相应的

2017-08-31 15:45:58 2441

原创 微信支付SDK中需要实现的各种算法

前言:iOS版的微信支付SDK中需要实现,随机数算法,获取时间戳,签名算法,MD5加密算法,一下是我所实现的这些算法,已经应用到项目了,都是按照微信支付文档上的要求实现的。1、随机数算法实现一个由数字和大写字母随机组成的32位长的字符串。///获取微信支付需要的随机数+ (NSString *)paymentWechatNonceString { NSArray *sam

2017-08-01 11:10:14 1904

原创 iOS开发--指定UIView的某几个角为圆角

在做iOS UI开发的时候我们会经常遇到要把一个矩形view的直角切成圆角,切圆角分两种情况:1、把view的四个直角都切成圆角: //设置圆角半径值 self.view.layer.cornerRadius = 10.f; //设置为遮罩,除非view有阴影,否则都要指定为YES的 self.view.layer.masksToBounds = YES;

2017-07-28 17:56:35 16193

转载 深入剖析 iOS 性能优化

问题种类时间复杂度在集合里数据量小的情况下时间复杂度对于性能的影响看起来微乎其微。但如果某个开发的功能是一个公共功能,无法预料调用者传入数据的量时,这个复杂度的优化显得非常重要了。上图列出了各种情况的时间复杂度,比如高效的排序算法一般都是 O(n log n)。接下来看看下图:图中可以看出 O(n) 是个分水岭,大于它对于性能就具有很大的潜在影响,如果是个公共的接口一定要加上说明,自己调用也要做到心

2017-07-28 11:28:57 5751

转载 ios项目优化

前言在项目业务趋于稳定的时候,开发完迭代需求后,我们可能会无所适从,进入一段空白期,但是对于攻城狮来说闲暇不是件好事,所以我们可能总想学点什么,却又没有头绪。这个时候我们就可以考虑完善和优化我们的项目了。从中可以运用到一些底层RunLoop或者Runtime的知识,熟能生巧总是没错的��结构与架构1.1 结构这里说的结构大概有两点:1.文件目录分类 2.第三方库管理1.1.1 文件目录分类为了方

2017-07-28 11:16:34 1054

原创 ios app上架报错 error- itms 90080,90087,90209,90125 等的解决办法

一、遇到的问题:ERROR ITMS-90087: "Unsupported Architectures. The executable for yht.temp_caseinsensitive_rename.app/Frameworks/VideoCore.framework contains unsupported architectures '[x86_64, i386]'."

2017-07-12 11:28:03 3369 1

转载 iOS响应式架构

自2014年起,移动端的架构中开始渐渐的融入了响应式的元素。时至今日,融入响应式的架构已经在很多产品的多次迭代中经受住了考验。十年后,再回首现在这一时间点,很可能会被认为是一个新的移动端架构时代的开端。很多文章中都提出了针对自己产品研究出来的一套架构,却鲜有文章单独对架构中的响应式元素进行讨论。笔者就写下了这样一篇关于iOS响应式架构的文章来阐述响应式架构的历史、响应式架构的本质、响应式架构的优点

2017-07-04 10:34:08 492

原创 NSURLRequest 各种缓存类型说明

NSURLRequestUseProtocolCachePolicy = 0,  //默认的cache policy,使用Protocol协议定义。NSURLRequestReloadIgnoringLocalCacheData = 1,//忽略缓存直接从原始地址下载。NSURLRequestReloadIgnoringLocalAndRemoteCacheData =

2017-06-30 15:34:06 441

转载 Mac 配置FFmpeg环境

假如你的mac 电脑想要看更多格式的视频内容,需要转换视频格式,又不想下载新的App什么的,那么今天我们就来点高大上的手段,根据FFmpeg实现环境的配置来更改视频的格式。例如:将flv格式转换成mp4格式,将mp4转换成mp3等等。FFmpeg官网:(ps:虽然都是英文吧,但是我看不太懂)http://ffmpeg.org/需要工具:1.homebrew2.终端

2017-06-30 11:59:05 556

转载 iOS 保持界面流畅的技巧

由 ibireme | 2015-11-12 | iOS, 技术这篇文章会非常详细的分析 iOS 界面构建中的各种性能问题以及对应的解决思路,同时给出一个开源的微博列表实现,通过实际的代码展示如何构建流畅的交互。Index演示项目屏幕显示图像的原理卡顿产生的原因和解决方案CPU 资源消耗原因和解决方案GPU 资源消耗原因和解决方案AsyncDispl

2017-05-10 13:14:11 473

转载 关于内存泄漏,还有哪些是你不知道的?

前言好久没写东西了,因为最近懒了些,且找不到什么好的题材,所以准备对内存泄漏的问题做一篇整理。内存泄漏问题一直是项目开发中的一大问题,本文力求帮助从事过一段时间工作的iOS开发者快速寻找App中的内存泄漏问题。部分内容比较基础,大神可无视勿喷。一、从AFNet说起对于iOS开发者,网络请求类AFNetWorking是再熟悉不过了,对于AFNetWorking的使用我们通常会

2017-05-02 13:28:20 905

转载 【长篇高能】ReactiveCocoa 和 MVVM 入门

MVC任何一个正经开发过一阵子软件的人都熟悉MVC,它意思是Model View Controller, 是一个在复杂应用设计中组织代码的公认模式. 它也被证实在 iOS 开发中有着第二种含义: Massive View Controller(重量级视图控制器)。它让许多程序员绞尽脑汁如何去使代码被解耦和组织地让人满意. 总的来说, iOS 开发者已经得出结论: 他们需要给视图控制器瘦身,

2017-04-25 18:33:54 902

转载 最快让你上手ReactiveCocoa之基础篇

前言很多blog都说ReactiveCocoa好用,然后各种秀自己如何灵活运用ReactiveCocoa,但是感觉真正缺少的是一篇如何学习ReactiveCocoa的文章,小编看了很多篇都没看出怎么使用ReactiveCocoa,于是决定自己写一遍关于学习ReactiveCocoa的文章,本文主要针对如何从零开始学习ReactiveCocoa,这里非常感谢3个人(支点的雷纯锋,camera

2017-04-25 18:31:35 275

转载 杂谈: MVC/MVP/MVVM

前言本文为回答一位朋友关于MVC/MVP/MVVM架构方面的疑问所写, 旨在介绍iOS下MVC/MVP/MVVM三种架构的设计思路以及各自的优缺点. 全文约五千字, 预计花费阅读时间20 - 30分钟.MVCMVC的相关概念MVC最早存在于桌面程序中的, M是指业务数据, V是指用户界面, C则是控制器. 在具体的业务场景中, C作为M和V之间的连接,

2017-04-24 15:01:25 573

转载 避免滥用单例

单例是整个 Cocoa 中被广泛使用的核心设计模式之一。事实上,苹果开发者库把单例作为 "Cocoa 核心竞争力" 之一。作为一个iOS开发者,我们经常和单例打交道,比如 UIApplication 和 NSFileManager 等等。我们在开源项目、苹果示例代码和 StackOverflow 中见过了无数使用单例的例子。Xcode 甚至有一个默认的 "Dispatch Once" 代码片段

2017-04-21 19:05:06 1484

转载 NSString 与 Unicode

当你在处理文本时,如果你不是在写一些非常古老的代码(legacy code),那么你一定要使用 Unicode。幸运的是,苹果和 NeXT 一直致力于推动 Unicode 标准的建立,而 NeXT 在 1994 年推出的 Foundation Kit 则是所有编程语言中最先基于 Unicode 的标准库之一。但是,即使 NSString 完全支持 Unicode,还替你干了大部分的重活儿,处理各种语

2017-03-28 11:32:50 1714

原创 Reason : image not found

一、提出问题:在引入 mapbox.framework 这个第三方框架后,Xcode 的 控制台 打印出了如下错误:Reason : image not found二、解决办法:

2017-02-24 12:07:53 759

原创 自定义地图样式,各地图信息梳理。

一 、地图种类:百度地图、高德地图、谷歌地图、苹果地图、openstreetmap、mapbox这些地图都能 自定义地图 样式;二、 定义地图:1、百度地图:百度地图个性化说明 :http://lbsyun.baidu.com/index.php?title=iossdk/guide/custom百度地图编辑工具: http://lbsyun.baidu.c

2017-02-23 14:12:03 7318

转载 iOS10+Xcode8 + iOS8 -- Xcode8的assets问题导致运行iOS8崩溃的解决方案

iOS 10 出来了,项目需要适配,更新Xode8 后,项目运行iOS 8.4 真机时,出现莫名其妙崩溃的问题。在网上寻求解决方案时发现了这篇博文– @ian博客 Xcode8的assets问题导致运行iOS8崩溃的解决方案看完文章后,发现操作有点复杂。点开博文文献《Xcode 8 build crash on iOS 9.2 and below》!!!发现了这个 Update: If your

2016-12-07 11:15:36 1712

原创 The image set "" has an unassigned child.

The image set " " has an unassigned child.

2016-11-30 11:02:28 3616

转载 iOS-图文表并茂,手把手教你GCD

前言对初学者来说,GCD似乎是一道迈不过去的坎,很多人在同步、异步、串行、并行和死锁这几个名词的漩涡中渐渐放弃治疗。本文将使用图文表并茂的方式给大家形象地解释其中的原理和规律。线程、任务和队列的概念异步、同步 & 并行、串行的特点一条重要的准则一般来说,我们使用GCD的最大目的是在新的线程中同时执行多个任务,这意味着我们需要两项条

2016-11-02 13:40:18 587

原创 iOS 版本号

一、常识:1、version:Version, 通常说的版本号, 是应用向用户宣传说明时候用到的标识. 一般有2段或者3段式, 如:2.1,8.1.2Version 一般由产品部门确定, 完全迥异的更新需要改变主版本号, 比如QQ 4.0 的变化非常大, 主版本的变化会更加吸引用户的眼球,所以有的应用会频繁的更新主版本号, 比如 FireFox 20.0 . 两段式

2016-10-26 13:39:18 576

转载 app定位、地图、坐标系的那些坑

原文地址: http://www.jianshu.com/p/f8224779ca63开发App时会遇到各种坑,本文分享我们在iOS/Android系统中定位和地图中遇到的坑,以及携程App的解决方案。定位定位即获取用户当前经纬度,iOS平台都是通过系统SDK接口获取的,因此所有App获取定位及精度的能力是相同的,即使Google Maps、百度地图、高德地图这种专

2016-10-19 12:01:54 21429 1

原创 base64编码、解码

base64编码:// base64编码+ (NSString*) base64Encode:(NSData *)data{ static char base64EncodingTable[64] = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P',

2016-08-31 10:28:52 566 2

InstallWizardForVC2008/2010Express.js/InstallWizardForVC2008/2010.js

本压缩包包含cocos2d-x所需要的必要文件,如缺少则VS无法加载Cocos2d-x模板,本压缩包有以下几个文件:InstallWizardForVC2008Express.js、 InstallWizardForVC2010Express.js、InstallWizardForVC2008.js、InstallWizardForVC2010.js

2014-09-11

李春葆:数据结构习题与解析(C语言版).pdf

李春葆:数据结构习题与解析(C语言版).pdf

2014-06-08

Windows逆向编译技术

Windows逆向编译技术

2014-05-05

Filter驱动开发笔记(1).pdf

Filter驱动开发笔记(1).pdf

2014-04-17

Windows个人防火墙的设计与实现

Windows个人防火墙的设计与实现,Windows个人防火墙的设计与实现

2014-04-16

MSVCR100各种版本的都有

MSVCR100.dll里面有十余个版本的,能满足几乎所有人的要求, 使用方法: 把“ MSVCR100.dll ”文件和“ 注册.bat ”文件拷贝到 C:\windows\system32\文件夹下 然后,双击“ 注册.bat ”文件,就行啦

2014-04-02

GetAdaptersInof获取本地连接网卡信息,排除无线网卡和虚拟网卡

GetAdaptersInof获取本地连接网卡信息,排除无线网卡和虚拟网卡,只获取本地主机的物理网卡信息

2014-03-23

Windows API开发详解_函数、接口、编程实例【例代码】

Windows API开发详解_函数、接口、编程实例【例代码】

2014-03-23

C# 如何判断一个Byte数组中是否存在某些连续的数据

C# 如何判断一个Byte数组中是否存在某些连续的数据

2014-03-05

C#把Excel中的数据导入到SQL Server中

C#把Excel中的数据导入到SQL Server中

2014-02-20

Network Programming for Microsoft Windows

《Network Programming for Microsoft Windows》,这本书是比较好的关于Windows网络编程书

2014-02-19

Windows网络编程.pdf

Windows网络编程.pdf ,中文版,完整版

2014-02-19

TCP/IP详解卷1:协议

TCP/IP详解卷1:协议,中文版,完整

2014-02-19

获取Shadow SSDT服务函数原始地址

获取Shadow SSDT服务函数原始地址

2014-02-17

获取Nt函数服务号GetSSDTServiceID

获取Nt函数服务号GetSSDTServiceID

2014-02-17

InstallDriver.exe

InstallDriver.exe

2013-12-27

基于C语言的Windows服务程序编写步骤

基于C语言的Windows服务程序编写步骤.

2013-12-18

MFC消息大全

MFC消息大全.包含MFC中所有消息。

2013-12-13

获取进程信息和计算进程文件的MD5码

获取进程信息和计算进程文件的MD5码

2013-12-11

几百种加密算法库

几百种加密算法库

2013-12-10

CButtonST类的实现代码.zip

CButtonST类的实现代码 zip 内附使用说明一份

2013-11-23

asp.net的网站模板后台

asp.net的网站模板后台

2013-11-18

VC获取可移动硬盘的物理序列号

VC获取可移动硬盘的物理序列号,是物理序列号,不是逻辑序列号。

2013-11-15

VC读取U盘物理序列号

VC读取U盘物理序列号,网上有很多都是获取逻辑序列号的,这个是获取物理序列号的。

2013-11-15

基于Eclipse的Linux驱动插件的设计与实现

基于Eclipse的Linux驱动插件的设计与实现

2013-11-15

Windows核心编程(第五版) 随机光盘

Windows核心编程(第五版) 随机光盘,里面全都是代码,很全的。

2013-11-12

ASPPatterns.allcode设计模式

ASPPatterns.allcode设计模式。

2013-11-09

Everything_1.2.1.413b.zip

Everything_1.2.1.413b.zip 你还在为搜索电脑中的文件速度慢而发愁吗?那就来试试这款神器吧,短短几秒钟就可以从电脑中找到你想要的文件。

2013-11-09

Objective-C编程之道:IOS设计模式解析

第一部分:设计模式初体验; 第二部分:对象创建; 第三部分:接口适配; 第四部分:对象去耦; 第五部分:抽象集合; 第六部分:行为扩展; 第七部分:算法封装; 第八部分:性能与对象访问; 第九部分:对象状态;

2017-02-24

从C++到Objective-C

从C++到Objective-C.pdf是国外大牛所写,国内大牛翻译的,本文档比较详细的介绍了C++与Objective-C的区别和联系,是一个值得我们学习的文档。

2015-04-12

C++内存管理详解(完整整理版).pdf

C++内存管理详解(完整整理版).pdf,本文档共10页,对C++中的内存管理做了非常详细的讲解,值得我们学习。

2015-04-12

C++内存管理pdf版

C++内存管理pdf版,全书56页,是大牛写的,对C++中的内存管理做了非常详细的讲解,值得我们学习。

2015-04-12

征服C指针中文版—全.pdf

征服C指针完整版--文字版.pdf,简体中文,畅销11年的经典C指针书。

2015-03-25

graphviz-2.36.msi

graphviz-2.36.msi

2015-01-21

doxygen-1.8.9.1-setup.zip

doxygen-1.8.9.1-setup.zip

2015-01-21

DirectUI界面库

DirectUI界面库

2015-01-01

pdf to word的转换工具

pdf to word的转换工具,把pdf格式的文件转换成Word文档。

2014-09-23

Cocos2d-x手机游戏跨平台开发.pdf

Cocos2d-x手机游戏跨平台开发.pdf

2014-09-12

Cocos2D-X游戏开发技术精解.pdf

Cocos2D-X游戏开发技术精解.pdf

2014-09-12

ligerrmv2.rar

C# .net ligerrmv2

2014-09-10

空空如也

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

TA关注的人

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