自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 iOS添加自定义自体 [UIFont fontWithName: size:](英文有效)

[UIFont fontWithName:(NSString *)fontName size:(CGFloat)fontSize];//便利字体名称for (NSString *str in [UIFont familyNames]) {        dlog(@"UIFont_name: %@",str);}2015-05-25 16:36:

2017-04-11 10:44:41 551

原创 正则表达式

很多不太懂正则的朋友,在遇到需要用正则校验数据时,往往是在网上去找很久,结果找来的还是不很符合要求。所以我最近把开发中常用的一些正则表达式整理了一下,在这里分享一下。给自己留个底,也给朋友们做个参考。一、校验数字的表达式1. 数字:^[0-9]*$2. n位的数字:^\d{n}$3. 至少n位的数字:^\d{n,}$

2017-03-18 10:46:40 309

转载 iOS 10 适配 ATS(app支持https通过App Store审核)

一. HTTPS简单的来说,SSL/TSL通过四次握手。SSL协议的工作流程:服务器认证阶段:客户端向服务器发送一个开始信息“Hello”以便开始一个新的会话连接;服务器根据客户的信息确定是否需要生成新的主密钥,如需要则服务器在响应客户的“Hello”信息时将包含生成主密钥所需的信息;客户根据收到的服务器响应信息,产生一个主密钥,并用服务器的公开密钥加密后传给服务器;服

2016-12-21 13:29:30 794

转载 iOS开发如何判断字符串是否是整数,浮点数,纯数字

//判断是否为整形:- (BOOL)isPureInt:(NSString*)string{    NSScanner* scan = [NSScanner scannerWithString:string];    int val;    return[scan scanInt:&val] && [scan isAtEnd];}//判断

2016-11-15 12:50:02 2711

转载 在xcode中怎么看真机的沙盒

在iOS开发之沙盒机制(SandBox),我们了解到如何查看模拟器的沙盒内容。直接在Finder->前往->前往文件夹里输入: /Users/ligang/Library/Application Support/iPhone Simulator/这样就可以查看模拟器的沙盒内容。在平时开发中,我们应该大部分用的是真机测试。如果需要在沙盒里操作文件,那么我们可以通过观察真机沙盒的内容,来确

2016-10-09 16:24:05 992

原创 图片的压缩

图片的压缩其实是俩概念,1、是 “压” 文件体积变小,但是像素数不变,长宽尺寸不变,那么质量可能下降,2、是 “缩” 文件的尺寸变小,也就是像素数减少。长宽尺寸变小,文件体积同样会减小。这个 UIImageJPEGRepresentation(image, 0.0),是1的功能。这个 [sourceImage drawInRect:CGRectMake(0,0,targetWidt

2016-10-06 15:44:23 263

转载 iOS直播app原理

一、个人见解(直播难与易)直播难:个人认为要想把直播从零开始做出来,绝对是牛逼中的牛逼,大牛中的大牛,因为直播中运用到的技术难点非常之多,视频/音频处理,图形处理,视频/音频压缩,CDN分发,即时通讯等技术,每一个技术都够你学几年的。直播易:已经有各个领域的大牛,封装好了许多牛逼的框架,我们只需要用别人写好的框架,就能快速的搭建一个直播app,也就是传说中的站在大牛肩膀上编

2016-08-28 16:29:17 1292

转载 iOS开发之有间距的UITableViewCell

UITableView是最常用的一个iOS控件,现要做一个如下图的UITableView,其中白色部分就是cell,可是默认的UITableView中cell之间是没有间隔的,那么办呢?网上有2种做法,我这里顺带提一下吧效果图.png1、方式一通过设置cell的contentView来间接实现,在cell的contentView的顶部或者底部留下一定的间距,这样就会有cell间

2016-08-22 13:06:35 342

转载 iOS自定义视频录制界面

相信在iOS应用里面很常用的功能之一就是视频录制了,但是往往系统的录制界面不是我们想要的,所以这时候就得自定义视频录制界面了.当然对很多人来讲的,AVFoundation这个库不是很熟.下面就一步步来实现一个自定义界面把!创建UI以及相机采集工作NSError *error = nil; self.session = [[AVCaptureSession a

2016-08-22 08:31:24 615

原创 申请开通自媒体账号的署名文章

祝贺!祝贺!本人将在今日头条的头条号开通技术专栏,用于分享前端技术,欢迎大家关注!头条号名称:前端技术大全;PS:本人也已在微信公众平台开设微信公众号,公众号名称:前端技术大全,感谢大家支持;

2016-07-12 09:59:04 439

原创 我看易货

最近通过朋友听说了一些易货的项目,易货,说白了就是物物交货,在人类社会使用货币进行交易之前,一直采取的就是以物易物的交易方式。但是,就是这种很早就出现的交易方式,在互联网的推升下,闪发出现代交易的生辉。我始终对这些互联网项目充满着好奇,于是,我想汇总一下易货的知识。1.什么是易货?     易货是指政府企业及个人之间对商品和服务的等值交换。2.什么是现代易货?

2016-07-11 11:12:26 816

原创 github常见操作

1. 在本地修改从github上clone的仓库后上传到github从github上clone一个自己的仓库到本地: git clone 自己的github仓库(https或者SSH仓库)修改本地仓库中的文件,将所有修改的文件添加到暂存区中 git add .提交修改 git commit -m "提交说明"将本地仓库修改的文件都上传到github仓库 git

2016-07-08 10:12:54 401

转载 iOS二维码扫描

做iOS的二维码扫描,有两个第三方库可以选择,ZBar和ZXing。今天要介绍的是iOS7.0后AVFoundation框架提供的原生二维码扫描。首先需要添加AVFoundation.framework框架到你工程中build phase的"Link Binary With Libraries"之下,然后就可以开始了。一、做好准备工作,搭建UIUI效果如图 IBOu

2016-06-28 11:37:18 394

原创 手机推送原理

最近做一个物流类的app,要实现把订单推送到送货员手机上,于是就想搞清楚推送这个原理....移动手机推送消息的方式很常见,手机每天都能收到好多推送消息,经过研究发现,这些推送服务的原理都是维护一个长连接(要不不可能达到实时效果),但普通的socket连接对服务器的消耗太大了,所以才会出现像MQTT这种轻量级低消耗的协议来维护长连接。      我们首先了解一下为什么androi

2016-06-27 17:09:17 1691

转载 iOS 直播类APP开发流程

(一) iOS 直播类APP开发流程分解: 1 . 音视频处理的一般流程:数据采集→数据编码→数据传输(流媒体服务器) →解码数据→播放显示1、数据采集:摄像机及拾音器收集视频及音频数据,此时得到的为原始数据涉及技术或协议:摄像机:CCD、CMOS拾音器:声电转换装置(咪头)、音频放大电路2、数据编码:使用相关硬件或软件对音视频原始数据进行编码处理(

2016-06-27 15:57:41 2806 1

原创 人生的意义

人生是没有任何意义的,人类存在于这个世界上只有几十万年,天上的星星都存在几十亿年了。你以为宇宙真的在意你和我吗?当然不在意,我们只是尘埃罢了。但是这不代表我们应该放弃一切。首先我们要明白一个最基本的道理----人生是艰难的。有时候你会开心,有时候你会难过,人生就是这样,巧克力不会一直存在,但是我们有机会去品尝它的美味。当你接受了这些事实后,你就能开始享受生活了。享受生活很简单。学会关心和理解;做你

2016-06-25 17:47:23 390

原创 软件开发流程

1、与客户谈需求项目刚开始,对项目有个大致了解和客户基本要求的一个沟通;具体的外包内容还要看对方的需求是否明确,不明确的话还需要帮助对方明确需求,注意引导客户的需求,让需求明确化,简单化;一般客户需求明确的并不是很多,这个过程需要尽可能多的了解对方的需求;2、技术部进行需求讨论与客户谈需求是大致了解,我们内部需求讨论是要明确一个基本的框架,主要确定软件的开发目标及其可行性;

2016-06-23 09:23:23 446

转载 Git的使用

我们就以Github为例简单来说Git可以分为以下几点:接下来我们就进行GitHub服务端创建1、首先你要有一个Github账号 2、一般我们使用的git管理工具都是SourceTreeSourceTree是客户端的版本控制工具,是一个又Git命令组合而成的可视化工具,支持创建、克隆、提交、push、pull、和合并等操作

2016-06-22 18:28:15 395

原创 颠覆程序员的React Native

当今社会,随着智能手机的不断普及,手机应用层出不穷,方便了人们的生活。同样在企业内部能够开发应用服务于员工的工作,大大的提高员工的工作效率。相应的加大了我们对于移动端的投入,不管是原生APP开发,还是H5 APP开发,都各有利弊,如何选择一种开发APP的方式,使得既有原生出色的体验,又能够享受H5开发般的低成本、以及跨平台性,这无异于给我们的客户带来了更好的经济效益。React Nativ

2016-06-22 11:31:30 596

原创 JavaScript 基础知识--语句

现在是越学JS越感觉编程语言太相似,所以我决定对于大家熟知的一些东西,一概而过,只讲不同。关于JS的运算符(+,-,*.....)和c语言都一样,我就不提啦,++,--,也都一样,对啦,Swift 3.0 Preview 1去掉啦++和--操作符。说起Swift,我就想到啦JS中的函数和Swif中是一样的,只是JS中用function修饰。算啦,还是介绍一下JS中的函数吧!函数是由

2016-06-15 15:05:30 507

原创 JavaScript 基础知识--对象

既然是面向对象编程,那么什么是对象呢?这篇文章将向大家介绍JavaScript 对象:JavaScript 中的所有事物都是对象:字符串、数字、数组、日期,等等。在 JavaScript 中,对象是拥有属性和方法的数据。属性和方法属性是与对象相关的值。方法是能够在对象上执行的动作。举例:汽车就是现实生活中的对象。汽车的属性:c

2016-06-15 09:18:36 483

原创 JavaScript 基础知识--数据类型

上一篇说的变量,大家看着是不是都很简单?是不是感觉和其他语言很相似?我们这一篇来看数据类型,也很简单。字符串、数字、布尔、数组、对象、Null、UndefinedJavaScript 拥有动态类型JavaScript 拥有动态类型。这意味着相同的变量可用作不同的类型:实例var x // x 为 undefinedvar

2016-06-13 10:53:41 456

原创 JavaScript 基础知识--变量

最近在看JavaScript 的基础知识,其实编程语言的基础语法都很类似。下面就介绍一些JS的简单语法知识1.JavaScript 变量变量是存储信息的容器。实例var x=2;var y=3;var z=x+y;就像代数那样x=2y=3z=x+y在代数中,我们使用字母(比如 x)来保存值(比如 2)。通过上面的表达式 z=x+y,我

2016-06-13 10:47:24 332

转载 直播--FFPLAY 的原理

电影文件有很多基本的组成部分。首先,文件本身被称为容器Container,容器的类型决定了信息被存放在文件中的位置。AVI和 Quicktime就是容器的例子。接着,你有一组流,例如,你经常有的是一个音频流和一个视频流。(一个流只是一种想像出来的词语,用来表示一连串的通过时间来串连的数据元素)。在流中的数据元素被称为帧Frame。每个流是由不同的编码 器来编码生成的。编解码器描述了

2016-06-12 09:48:47 1127

转载 使用AutoLayout布局适配时,如何提前获得AutoLayout完成适配后的子控件的真实frame

当我们使用AutoLayout做适配时,可能会有这样的需求,就是在想在适配完成前就取得子控件的真实frame,来做一些操作。比如我们想把一个正方形的UIImageView剪成一个圆形,这时候就需要这么做[objc] view plain copyself.imageView.layer.cornerRadius = self.imageView.

2016-06-03 15:25:40 748

转载 Beta 版软件如何成功发布App

你是否也像我一样手贱升级了beta版 OS X或者Xcode,然后发布新版App的时候说啥也发布不上去。。Xcode还好,大不了重新装个正式版,beta版系统就惨了,第一反应还得重装系统了,还是降级的。。囧后来发现只要改下系统编译号就可以机智通过的。。特此记录,方便日后继续手贱。问题描述就是下面这段iTunnes Connect上的提示,让我苦苦纠结了许久。。

2016-06-01 16:47:55 733

转载 发布IOS产品被拒后如何再上传新发布包

前两天提交公司产品2.0.7版本到苹果审核,昨天提示被拒绝。被拒原因就不描述了。我们经过修改后,重新打包上传,可是怎么也提交不了。因为在苹果后台上已经存在2.0.7版本的发布包了(就是被拒的那个)。这可怎么办?难不成将版本修改成2.0.8发布?但这样不好啊,会让用户以为中间那个版本漏过了。解决方法:在Xcode上,可以查看一下项目的工程配置。在info页中,有两个版本号可填,不知道

2016-06-01 14:49:29 369

原创 用淘宝的接口获取手机ip

-(void)urlRequestOperation{NSString *URLTmp = @"http://ip.taobao.com/service/getIpInfo.php?ip=myip";NSString *URLTmp1 = [URLTmp stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; //转码

2016-05-30 14:09:26 2065

转载 ReactiveCocoa之进阶篇

1.ReactiveCocoa常见操作方法介绍。1.1 ReactiveCocoa操作须知所有的信号(RACSignal)都可以进行操作处理,因为所有操作方法都定义在RACStream.h中,因此只要继承RACStream就有了操作处理方法。1.2 ReactiveCocoa操作思想运用的是Hook(钩子)思想,Hook是一种用于改变API(应用程序编程接口:方

2016-05-22 12:44:51 528

转载 ReactiveCocoa之基础

1.ReactiveCocoa简介ReactiveCocoa(简称为RAC),是由Github开源的一个应用于iOS和OS开发的新框架,Cocoa是苹果整套框架的简称,因此很多苹果框架喜欢以Cocoa结尾。2.ReactiveCocoa作用在我们iOS开发过程中,当某些事件响应的时候,需要处理某些业务逻辑,这些事件都用不同的方式来处理。比如按钮的点击使用action,ScrollV

2016-05-22 12:43:24 445

转载 Runtime

一、runtime简介RunTime简称运行时。OC就是运行时机制,也就是在运行时候的一些机制,其中最主要的是消息机制。对于C语言,函数的调用在编译的时候会决定调用哪个函数。对于OC的函数,属于动态调用过程,在编译的时候并不能决定真正调用哪个函数,只有在真正运行的时候才会根据函数的名称找到对应的函数来调用。事实证明:在编译阶段,OC可以调用任何函数,即使这个函数并未实现,只要声明过

2016-05-22 12:41:24 182

原创 全栈 JavaScript

JavaScript 无处不在------------------------------在以前,JavaScript程序员就是前端开发者的同义词,永远与浏览器绑在一起。但那已是昨日往事。Node.js的崛起开启了一个新纪元,从此,JavaScript 程序员可能不再是被局限于浏览器的前端开发者了。相比其他高级程序语言,作为一名 Java

2016-05-22 12:10:55 1273

原创 arc4random

最近在做彩票的项目,有到了随机算法,在这里分享一下:一.常用方法:arc4random例:获取一个随机整数,范围在[from,to),包括from,不包括to(arc4random() % (to – from + 1))+ from 二、生成不重复随机数思想:其原理就是利用两个数组,第一个数组存放要随机的原始数据,第二个数组存放结果;然后arc4r

2016-05-21 14:13:29 875

转载 众包物流:把每个人变成快递员

一、众包物流是什么?说白了,众包物流就是将原来由专职快递员所做的工作交给大众来做。只要你有一部智能手机,一个简单的交通工具,在空闲时间就可以配送货物。其实Uber和Airbnb采用的也都是众包模式。生活服务商家在众包物流平台下单后,平台上注册的配送员抢单,或者由平台派单后进行配送,并按单获得酬劳。二、众包物流分类从整体来看,目前的众包物流平台集中在同城配送,而跨区域快递主要

2016-05-21 11:58:05 2753

转载 Swift快速集成下拉刷新和上拉加载更多

ESPullToRefreshESPullToRefresh是一个非常易于开发者使用的下拉刷新和加载更多组件。通过一个UIScrollView的扩展,可以轻松为UIScrollView的所有子类添加下拉刷新功能。 如果你想定制组件的UI样式,只要实现指定的协议方法即可。 如何安装使用CocoaPodspod "ESPullToRefresh"手动安装git clone ht

2016-05-16 12:40:17 4500

转载 iOS NSString,NSArray,NSDictionary的Copy属性使用

在平时使用NSArray,NSDictionary以及NSString的过程中,经常会默认写了strong 属性,或者按照规范使用Copy,在Apple的规范中,是提倡我们使用copy的属性。基本原理简单来说,copy属性就像字面意思一样,在赋值的时候会系统自动copy一份内存出来,修改新的变量,并不会导致原先的变量出现改变即:@property (nonatomic,stro

2016-05-12 13:40:14 2532

转载 iOS开发各种证书问题

引言        关于开发证书配置(Certificates & Identifiers & Provisioning Profiles),相信做iOS开发的同学没少被折腾。对于一个iOS开发小白、半吊子(比如像我自己)抑或老兵,或多或少会有或曾有过以下不详、疑问、疑惑甚至困惑:什么是App ID?Explicit/Wildcard App ID有何区别?什么是App Gro

2016-05-11 11:25:21 847

原创 iOS CGRectGetMaxX/Y 使用

在iOS的界面布局中我们可以使用CGRectGetMaxX 这个方法来方便的获取当前控件的x坐标值+宽度的数值,这样便可以方便布局。同理CGRectGetMaxY是获取y坐标值+控件高度的值,当然这个系列的方法还有很多大家可以试下。/* Return the leftmost x-value of `rect'. */CG_EXTERN CGFloat CGRectGetM

2016-05-10 08:48:55 6620

转载 Xcode插件指南

安装方法从GitHub上下载对应的插件后,直接运行安装(PS:下一种方法,包含这种fa)使用Alcatraz插件管理器 --- 小编推荐方法下载地址 : https://github.com/alcatraz/Alcatraz安装:1)下载后运行运行成功.png2)运行成功后关闭Xcode,是完全退出哦!随便打开电脑中的一个工程,会出现下图

2016-04-27 08:49:31 324

原创 60秒倒计时

__block int timeout=60; //倒计时时间    dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);    dispatch_source_t timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_

2016-04-26 10:55:30 492

空空如也

空空如也

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

TA关注的人

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