自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

快乐出发

笑对人生,快乐足矣

  • 博客(47)
  • 收藏
  • 关注

原创 <iOS>Swift闭包

Swift闭包闭包是功能性自包含模块,可以在代码中被传递和使用。Swift中的闭包与C和Objective-C中的blocks以及其他一些编程语言中的lambdas比较相似。闭包可以捕获和存储其所在上下文中任意常量和变量的引用。这就是所谓的闭合并包裹着这些常量和变量,俗称闭包。Swift会为您管理在捕获过程中涉及到的内存操作。在S

2016-01-15 15:08:41 487

原创 <iOS>XML解析

XML解析XML解析一般分为两种模式:SAX和DOM,事件和文档1、XML解析之SAX解析,以及对NSXMLParser的应用SAX解析说白了,就是一个事物模型解析,从头开始读取文档,然后根据读取到头标签时要怎么处理,读完头标签后,理论上是读取标签值了。2、XML解析之5个代理方法-(BOOL)parser

2016-01-12 16:38:31 438

原创 <iOS>常见错误提示

1、Too many arguments to function call,expected 0, have 3Build Setting--> Apple LLVM X.0 - Preprocessing--> Enable Strict Checking of objc_msgSend Calls  改为 NO

2016-01-12 16:14:14 409

原创 <iOS>AFNetworking 3.0的使用

AFNetworking 3.0的使用弃用的类下面的类已从AFNetworking 3.0中废弃:AFURLConnectionOperationAFHTTPRequestOperationAFHTTPRequestOperationManager修改的类下面的类包含基于NSURLConnection的API的内部实现。他

2016-01-12 09:37:46 454

原创 <iOS>Alamofire的使用

Alamofire的使用项目的名称不应该是Alamofire同名的1、将Alamofire.xcodeprij文件拖拽到项目中,呈现效果如下:2、进入General窗口,滚动到Embedded Binaries项,点击其下方的+号,选择Alamofire.framework,最后点击Add完成添加,呈现效果如下:3、要使用Alamofire,

2016-01-04 09:43:35 498

原创 <iOS>CocoaPods使用过程

cd项目路径pod search 第三方库touch Podfileopen -e Podfileplatform:iospod 版本use_frameworks!//注释:use_frameworks!是在swift中导入Alamofire时,要求加入的pod install --

2016-01-04 09:42:10 286

原创 <iOS>十进制数转换成其他进制数

1、创建RadixConvert类2、RadixConvert.h文件代码#import typedef NS_ENUM(NSInteger,RadixType){    RadixType_2 = 2,    RadixType_8 = 8,    RadixType_10 = 10,    RadixType_16

2015-12-31 14:52:13 399

原创 <iOS>初次运行git前的配置

一般在新的系统上,我们都需要先配置下自己的Git工作环境。配置工作只需一次,以后升级时还会沿用现在的配置。当然如果需要,你随时可以用相同的命令修改已有的配置。Git提供了一个叫做git config的工具(译注:实际是git-config命令,只不过可以通过git加一个名字来呼叫此命令。),专门用来配置或读取相应的工作环境变量。而正是由这些环境变量,决定了Git在各个环节的具体工作方式和行为。

2015-12-25 09:45:34 1193

原创 <iOS>安装Git

安装Git是时候动手尝试下Git了,不过得先安装好它。有许多种安装方式,主要分为两种,一种是通过编译源代码来安装;另一种是使用为特定平台预编译好的安装包。从源代码安装若是条件允许,从源代码安装有好多好处,至少可以安装最新的版本。Git的每个版本都在不断尝试改进用户体验,所以能通过源代码自己编译安装最新版本就再好不过了。有些Linux版本自带的安装包更新起来并不及时,所以除非你在用最新的

2015-12-24 15:15:59 2456

原创 <iOS>Git基础

那么简单地说,Git究竟是怎样的一个系统呢?请注意,接下来的内容非常重要,若是理解了Git的思想和基本工作原理,用起来就会知其所以然,游刃有余。在开始学习Git的时候,请不要把各种概念和其他版本控制系统(诸如Subversion和Perforce等)相比拟,否则容易混淆每个操作的实际意义。Git在保存和处理各种信息的时候,虽然操作起来的命令形式非常相似,但它与其他版本控制系统的做法颇为不同。理解这

2015-12-23 16:06:56 472

原创 <iOS>Git简史

同生活中的许多伟大事件一样,Git诞生于一个极富纷争大举创新的年代。Linux内核开源项目有着为数众广的参与者。绝大多数的Linux内核维护工作都花在了提交补丁和保存归档的繁琐事务上(1991-2002年间)。到2002年,整个项目组开始启用分布式版本控制系统BitKeeper来管理和维护代码。到了2005年,开发BitKeeper的商业公司同Linux内核开源社区的合作关系结束,他们收回了免

2015-12-23 15:51:04 371

原创 <iOS>自动布局

自动布局手动操作springs&struts模式:springs—宽度和高度,struts—marginsautosizing mask决定了当一个视图的父视图大小改变时,其自身需要做出什么改变。autosizing mask的设置会和viewWillLayoutSubviews中的设置发生冲突,根据需求只选择其一即可。等宽约束、等高

2015-12-23 15:27:25 370

原创 <iOS>ARC下需要注意的内存管理

ARC下需要注意的内存管理启用ARC后,开发者不需要担心内存管理,编译器会为你处理这一切(注意ARC是编译器特性,而不是iOS运行时特性,更不是其他语言中的垃圾收集器)。简单来说,编译器在编译代码时,会自动生成实例的引用计数代码,帮助我们完成之前MRC需要完成的工作,不过据说除此之外,编译器也会执行某些优化。ARC虽然能够解决大部分的内存泄露问题,但是仍然有些地

2015-12-23 15:22:36 531

原创 <iOS>git-起步

起步本章介绍开始使用Git前的相关知识。我们会先了解一些版本控制工具的历史背景,然后试着让Git在你的系统上跑起来,直到最后配置好,可以正常开始开发工作。读完本章,你就会明白为什么Git会如此流行,为什么你应该立即开始使用它。版本控制什么是版本控制?我为什么要关心它呢?版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。在本书所展示的例子中,我们仅对保存着软件

2015-12-08 15:35:59 406

原创 <iOS>iOS中应用正则表达式

iOS中应用正则表达式(一)什么是正则表达式正则表达式,又称正规表示法,是对字符串操作的一种逻辑公式。正则表达式可以检测给定的字符串是否符合我们定义的逻辑,也可以从字符串中获取我们想要的特定部分。(二)正则表达式的语法看一个过滤纯数字的例子-(BOOL)validateNumber:(NSSting *)textString{

2015-11-13 16:20:16 341

原创 <iOS>Xcode插件

1、HOStringSense在编辑字符串的时候,它会在代码上方生成一个字数统计的提示框。当你需要编辑多行文本时,可以在弹出的文本框中编辑字符串内容,插件会自动进行字符串转义的工作,并实时在代码中更新。2、OMColorSense一个简洁的可视化颜色插件。在你编辑颜色的RGB值的时候,会在代码上方出现一个小的色块,显示对应的颜色。点击色块还会弹出一个颜色编辑器,

2015-11-12 15:09:49 461

原创 <iOS>动态改变导航栏颜色

第一部分第二部分

2015-11-10 17:37:27 460

原创 <iOS>ARC和非ARC下使用Block属性的问题

ARC和非ARC下使用Block属性的问题1、Block的声明和线程安全Block属性的声明,首先需要用copy修饰符,因为只有copy后的Block才会在堆中,栈中的Block的生命周期是和栈绑定的。另一个需要注意的问题是关于线程安全,在声明Block属性时需要确认”在调用Block时另一个线程有没有可能修改Block?”这个问题,如果确定不会有这种情况发生的

2015-11-10 14:46:06 419

原创 <iOS>typeof(self)的作用

block对于其变量都会形成strong reference,对于self也会形成strong reference,而如果self本身对block也是strong reference的话,就会形成strong reference循环,造成内存泄露,为了防止这种情况发生,在block外部应该创建一个week(__block)reference。所以在block内如果有self的话,一般都会在bl

2015-11-10 11:36:25 662

原创 <iOS>Objective-C常用的函数和常用的常量

1、算术函数2、三角函数3、指数函数4、常数

2015-11-10 11:25:29 460

原创 <iOS>Objective-C对URL尽心URLEncode编码

Objective-C对URL尽心URLEncode编码在iOS程序访问HTTP资源时需要对URL进行Encode,比如像拼出来的http://unmi.cc?p1=%+&sdd&p2=中文,其中的中文、特殊符号&%和空格都必须进行转译才能正确访问。在Java、.net和JS中都有相应的encodeURL方法可用,在Objective-C语言中,你可以试下- (NSStri

2015-11-09 11:39:05 494

原创 <iOS>NavigationBar

iOS7的UI改动,老的项目放到iOS7上运行,出现的问题,特别是NavigationBar。存在NavigationBar与UIViewController重叠问题。发现iOS7的视图有个边缘延伸的属性:edgesForExtendLayout,其默认值是UIExtendedEdgeAll。只要将其改为UIExtendedEdgeNone即可,要注意的是在iOS7以下版本会出现这个bug,所

2015-11-09 11:05:19 334

原创 <iOS>NSScanner类的基本用法

NSScanner类的基本用法NSScanner是一个类,用于在字符串中扫描指定的字符,尤其是把它们翻译/转换为数字和别的字符串。可以在创建NSScanner时指定它的string属性,然后scanner会按照你的要求从头到尾地扫描这个字符串的每个字符。创建一个ScannerNSScanner是一个类族,NSScanner是其中公开的一类。通常,可以用scann

2015-11-06 16:57:59 370

原创 <iOS>GCD使用经验与技巧

GCD使用经验与技巧GCD(Grand Central Dispatch)可以说是Mac、iOS开发中的一大“利器”,这里总结一些有关使用GCD的经验和技巧。dispatch_once_t必须是全局或static变量这一点很明确了,这一点还是强调一次,毕竟非全局或非static的dispatch_once_t变量在是使用时会导致非常不好排查的bug,正确的如下://

2015-11-06 14:03:30 495

原创 <iOS>swift中全局数据访问定义

1、swift中全局数据访问定义2、swift中全局数据访问

2015-11-05 11:25:49 385

原创 <iOS>swift简单控件的创建

1、创建一个UILabel控件2、创建一个UIButton控件3、创建一个UIView控件4、创建一个UIImageView控件5、创建一个UIControl控件

2015-11-05 11:16:03 298

原创 <iOS>iOS多线程编程之Grand Central Dispatch(GCD)介绍和使用

iOS多线程编程之Grand Central Dispatch(GCD)介绍和使用介绍:Grand Central Dispatch简称(GCD)是苹果公司开发的技术,以优化应用程序支持多核处理器和其他的对称多处理系统。这建立在任务并行执行的线程池模式的基础上的。它首次发布在Mac OS X10.6,iOS4及以上也可用。设计:GCD的工作原理是:让程序平行排队的特定任务,根据可用

2015-11-04 16:30:58 322

原创 <iOS>enumerateKeysAndObjectsUsingBlock的用法

enumerateKeysAndObjectsUsingBlock的用法block是一个有序的指令代码块,通常在代码中间花括号括起来的objective-c代码,但是它能被传递或被分配局部变量,然后作为一个参数来传递,基本上可以把花括号中间的代码保存到数据结构里。看起来就像这样子:[aDictionary enumrateKeysAndObjectsUsingBlock:^(id

2015-11-03 11:47:04 4320

原创 <iOS>UIScrollView实践经验

UIScrollView实践经验UIScrollView(包括它的子类UITableView和UICollectionView)是iOS开发中最常用也是最有意思的UI组件,大部分App的核心界面都是基于三者之一或三者的组合实现。UIScrollView是UIKit中为数不多能响应滑动手势的view,相比自己用UIPanGestureReconizer实现一些

2015-11-02 16:08:03 493

原创 <iOS>Grand Central Dispatch简介

(一)Grand Central Dispatch简介GCD是Apple开发的一个多核编程的较新的解决方法。在Mac OSX10.6雪豹中首次推出。GCD是一个替代诸如NSThread等技术的很高效和强大的技术。GCD完全可以处理诸如数据锁定和资源泄露等异步编程问题。在开始之前,需要理解的是要提供给GCD队列的是代码块,用于在系统或者用户创建的队列上调度运行。声明一个队列下

2015-10-30 17:14:44 397

原创 <iOS>多线程GCD

iOS多线程GCDGrand Central Dispatch(GCD)是Apple开发的一个多核编程的解决方法。dispatch queue分成以下三种:(1)运行在主线程的Main queue,通过dispatch_get_main_queue获取__OSX_AVAILABLE_STARTING(__MAC_10_6,__IPHONE_4_0)DISPA

2015-10-30 16:56:37 312

原创 <iOS>系统提供的dispatch方法

(一)dispatch方法为了方便地使用GCD,苹果提供了一些方法方便将block放在主线程和后台线程执行,或者延后执行。使用的例子如下所示:后台执行dispatch_async(dispatch_get_global_queue(0,0)),^{  //do something})主线程执行dispatch_async(dispatch_get_main_queue(

2015-10-30 16:09:45 552

原创 <iOS>获取键盘高度

(一)获取键盘高度

2015-10-30 11:59:21 346

原创 <iOS>常用手势

1、UITapGestureRecognizerTap(点一下)2、UIPinchGestureRecognizerPinch(二指往内或往外拨动)3、UIRotationGestureRecognizerRotation(旋转)4、UISwipeGestureRecognizerSwipe(滑动,快速移动

2015-10-30 11:14:46 344

原创 <iOS>arc4random

arc4random常用方法1、获取一个随机整数范围在:[0,100)包括0,不包括100int x = arc4random() % 100;2、获取一个随机数范围在:[500,1000),包括500,不包括1000int y = (arc4random() % 500) + 500;3、获取一个随机整数,范围在[from,to),包括from,不包括to- (int)g

2015-10-30 10:52:05 376

原创 <iOS>AFNetworking使用介绍

(一)内容介绍AFNetworking是一个轻量级的iOS网络通信库。它建立在NSURLConnection和NSOperation等类库的基础上,让很多网络通信功能变得十分简单。它支持HTTP请求和基于REST的网络服务(包括GET、POST、PUT、DELETE等)。支持ARC。要使用常规的AFN网络访问1、AFHTTPRequestOperationMan

2015-10-29 17:44:05 336

原创 <iOS>利用dispatch_once创建单例

(一)dispatch_once创建单例在软件工程中,单例是一种用于实现单例的数学概念,即将类的实例化限制成仅一个对象的设计模式。或者理解为:单例是一种类,该类只能实例化一个对象。尽管这是单例的实际定义,但在Foundation框架中不一定是这样。比如NSFileManager和NSNotificationCenter,分别通过它们的类方法defaultManager和defaultCen

2015-10-26 11:07:27 520

原创 <iOS>信鸽推送

(一)主题:信鸽推送(二)详细介绍信鸽推送需要导入的文件需要配置的导入文件部分代码- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

2015-10-23 17:43:14 819

原创 <iOS>极光推送

(一)主题:极光推送(二)详细介绍极光推送需要导入的文件如下需要配置的1、2、导入文件部分代码- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

2015-10-23 17:35:31 465

原创 <iOS>百度推送

(一)主题:百度推送(二)详细介绍百度推送需要导入的文件如下:需要配置的部分代码- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    // Override poin

2015-10-23 17:14:26 536

空空如也

空空如也

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

TA关注的人

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