自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

⒎過客ㄞ

纪录成长中的点滴……

  • 博客(30)
  • 资源 (8)
  • 收藏
  • 关注

原创 Block 代码块中循环引用问题

什么是循环引用循环引用指两个对象相互强引用了对方,既retain了对方,从而导致谁也释放不了谁的内存泄漏问题。比如我们在代理中一般用weak来修饰delegate而不用strong,正是因为那样会造成循环引用导致代理无法释放的问题。block中的循环引用这里讲的是block的循环引用问题,因为block在拷贝到堆上的时候(为什么要拷贝到堆上?见下面补充),会retain其引用的外部变量,那么如果bl

2016-05-15 20:12:25 1111

原创 iOS开发Runtime那点事

runtime介绍runtime从字面上的意思理解就是运行时间,run(跑,运行)time(时间),在iOS中呢俗称运行时,它是一套底层的纯C语言API,属于一个C语言库,包含了很多底层的C语言API,同时它也是OC的幕后工作者,我们平时写的OC代码在运行的过程中都会转为runtime的C语言代码。runtime的作用注意哦:用到runtime的地方要导入头文件:objc/runtime.h作用1:

2016-05-15 17:57:26 459

原创 Objective-C属性修饰符strong和copy的区别

记得刚参加工作的时候总是对OC中的属性修饰符strong和copy弄不明白,也总是被这两个东西坑,慢慢工作时间长了才真正了解了它,不过今天在项目中又被这两个东西给坑了一次,索性呢今天就把它记录下来,也为其它刚参加工作的小伙伴提个醒。问题描述在iOS开发中当我们给一个类定义属性的时候,必不可少的要选择到底该使用strong还是copy来修饰,如果属性是NSString或者NSArray及其子类的时候,

2016-05-14 11:43:57 1656

转载 AFNetworking实现程序重新启动时的断点续传

今天需要用AFNetworking实现断点续传的功能,但是在进行了一番研究之后,发现AFNetworking虽然支持下载文件的暂停和继续,但是程序重新启动后再次下载无法进行续传。网上有说可以通过AFDownloadRequestOperation这个AFNetworking的扩展库来实现重新启动后的续传,但是经过本人测试,这个库在最新的AFNetworking上会报错,无奈之下,参考他的代码,自己实

2016-05-12 18:18:11 434

原创 cocoapods使用指南

cocoapods介绍我们在iOS开发中不可避免的要使用第三方开源库,而cocoapods的作用就是使我们方便我们管理应用中的第三方开源库。为什么使用cocoapods在使用cocoapods之前,我们需要把用到的第三方开源库的源代码复制到项目中,而这些开源库通常需要依赖系统的一些framework,我们需要手工的将这些framework一一的增加到项目依赖中,同时我们也要管理这些依赖包的更新。这些

2016-05-08 21:58:08 2858

原创 iOS开发中常用的几个插件

上篇文章简单的说了下Xcode中的插件管理工具Alcatraz,今天呢就给大家分享一些自己在开发中使用较多的插件,可以帮助你提高开发效率,如果你还没有使用过Alcatraz,那么你可以先戳这里Alcatraz的安装与使用1. KSImageNamed KSImageNamed可以根据图像名称快速选择图片的插件,可以快速的帮你选择自己想要的图片。2. VVDocumenterVVDocumenter

2016-05-08 11:45:08 1048

原创 Xcode插件管理工具--Alcatraz

介绍Alcatraz 是一个帮你管理 Xcode 插件、模版以及颜色配置的工具。它可以直接集成到 Xcode 的图形界面中,让你感觉就像在使用 Xcode 自带的功能一样,同时使用起来也非常方便,可以很大程度上的提高我们的开发效率。安装和删除在终端中输入下面命令即可安Alcatraz:mkdir -p ~/Library/Application\ Support/Developer/Shared/

2016-05-06 08:31:29 508

原创 ios开发中动画那点事

一:UIKit动画在介绍CoreAnimation动画前先简单介绍一下UIKit动画,大部分简单的动画都可以使用UIKit动画实现,如果想实现更复杂的效果,则需要使用Core Animation了,Core Animation中包含了可以实现更为复杂的基础动画和关键帧动画等等。UIKit动画有两种写法,它不仅可以针对视图还可以针对其它控件。1:第一种写法是利用属性,结合beginAnimations

2016-04-22 08:59:51 1087

原创 ios ARC&MRC混编

ARC(Automatic Reference Counting) MRC(Mannul Reference Counting)苹果在iOS5中提出了ARC(Automatic Reference Counting)自动引用计数来管理内存,不过现在仍有部分项目中延用的MRC,比如一些比较老的类库什么的,如果你的项目编译环境是ARC的,那么引入了MRC的类库那么你不是该哭了嘛!好在苹果提供方法可以使

2016-03-27 22:02:35 1937

转载 OC中的类的三大特性:继承,封装,多态

OC中的类的三大特性,我们在学习Java的时候都知道,类有三大特性:继承,封装,多态,这个也是介绍类的时候,必须提到的话题,那么今天就来看一下OC中类的三大特性:一、封装 学习过Java中类的同学可能都知道了,封装就是对类中的一些字段,方法进行保护,不被外界所访问到,有一种权限的控制功能,Java中有四种访问权限修饰符:public,default,protected,private,访问权限一次

2016-03-24 22:26:06 527

转载 iOS开发中代码块的使用

通过代码块(block)功能,你就能像对待对象一般,指定要在方法和函数中传递任意代码部分。代码块的声明:int main (int argc, const char * argv[]) {@autoreleasepool {void (^myBlock) (NSString *x);//声明变量/*代码块是存储在一个变量中,并且需要参数和声明的返回类型。返回类型:(本类是void)声明代码块的返回

2016-03-24 21:57:16 388

原创 iOS中UINavigationController实现多级pop回退

iOS中UINavigationController的应用是非常常见的,我们知道iOS系统中呢对导航栏都是以压栈的方式管理的,通常我们使用到的只是上下级页面间的跳转,但是如果我们从A视图控制器push到B视图控制器,在从B视图控制器push到C视图控制器,那么问题来了,现在我们要从C使用Pop的方式直接回退到A要怎么实现呢?不买关子直接上代码: NSArray *controllers = s

2016-03-21 22:42:05 3284

原创 iOS中dismissViewController实现多级模态跳转

最近项目中用到这样一个逻辑:三个视图控制器:A,B,C,A模态跳转到B,B在模态跳转到C,等C操作完后要直接跳转回A,那么问题就来了,我们平时一般用到的只是从谁跳转过来,就在跳转回去,那怎么实现多级返回呢?其实用到的根本的方法还是下面的方法:- (void)dismissViewControllerAnimated: (BOOL)flag completion: (void (^ __nullabl

2016-03-21 22:30:07 4560

原创 iOS开发AssetsLibrary框架访问本地相册

iOS开发里面要访问本地的相册那么除了UIImagePickerController之外就是AssetsLibrary框架了,那么我们下面就了解一下AssetsLibrary框架。该框架下有几个类:ALAssetsLibrary,AlAssetsGroup,ALAsset,ALAssetsFilter和AlAssetRepresentation。下面呢我们就一个一个的简单了解下。ALAssetsLi

2016-03-16 22:29:11 823

原创 iOS画图-UIBezierPath和CAShapeLayer的简单使用

UIBezierPath和CAShapeLayer组合画出任何你想要的图形,废话不多说,直接上代码:UIBezierPath *path = [UIBezierPath bezierPathWithRoundedRect:CGRectMake(0, 0, self.bounds.size.width, self.bounds.size.height) cornerRadius:0]; CGPo

2016-03-08 12:19:31 704

原创 iOS绘图-UIBezierPath的使用

UIBezierPath简单介绍 iOS系统本身提供了两套绘图的框架,即UIBezierPath 和 Core Graphics。使用UIBezierPath可以创建基于矢量的路径,此类是Core Graphics框架关于路径的封装,所以使用起来比较简单。使用此类可以定义简单的形状,如椭圆、矩形或者有多个直线和曲线段组成的形状等。UIBezierPath是CGPathRef数据类型的封装。如果

2016-03-07 22:51:09 2845

原创 iOS如何在应用跳转至系统设置各个界面

在开发App的过程中,我们的应用难免要遇到设置系统服务的时候,比如说:打开定位服务,提示用户打开WI-FI啊等等,如果我们可以直接在App中跳转至相应的系统设置界面,那样是不是大大提升了用户体验呢?好,下面给出几个例子:1.打开系统设置的定位界面 //定位服务设置界面 NSURL *url = [NSURL URLWithString:@"prefs:root=LOCATION_SER

2016-01-22 10:16:45 1049

原创 iOS应用中如何跳转至App Store指定应用

iOS开发中根据需求可能要跳转到App Store,比如用户想对APP做出评价时就可以在APP内直接跳转至App Store的指定应用了,而不必打开App Store应用,在查询相应APP写评价,这样岂不是很繁琐。1.跳转至指定应用的详情页面NSString *idStr = [NSString stringWithFormat:@"itms-apps://itunes.apple.com/WebO

2016-01-22 10:02:51 1015

原创 iOS开发UIImageView动画效果

其实UIImageView动画只需知道image view的三个有关动画的属性就可以了:用于展示动画效果的图片数组源,动画的执行时间和动画是否重复,最后控制动画的开始和停止就可以了。 /* 图片数组 */ NSArray *images = [NSArray arrayWithObjects: [UIImage imageNamed:@"0

2016-01-21 10:57:46 876

原创 iOS中GIF图片的解析+合成

首先iOS中对GIF图片的解析必须要用到的类库有:MobileCoreServices.framework 和ImageIO.framework ,在你的项目中添加这两个库,然后导入头文件。文章主要讲到GIF图片的拆解,合成,包括在GIF图片上添加文字 主体思路:GIF图片拆解–>在每帧的图片上面添加文字–>然后合成GIF图片下面为主要代码:self.gifDicInfo = [self getG

2016-01-20 20:39:50 1849 2

原创 iOS开发中崩溃分析-BugHD的使用

BugHD是一个iOS开发中很好用的崩溃分析工具,它可以统计出你开发中和发布后应用中的详细崩溃信息,崩溃出现在什么地方,什么时候,崩溃了多少次等等,很好的为你作出了分析。使用方法呢也很简单:第一步:在BugHD平台创建自己的项目,获取唯一标示你应用的General Key第二步:下载KSCrash framework类库,并导入自己的项目,然后在项目中添加相应依赖库:libc++.tbd,lib

2016-01-14 22:54:59 3036

原创 Xcode开发中的debug和release两种模式

在开发的过程中,我们经常要输出一些必要的信息,通过控制台的输出信息我们就可以知道整个数据交互的一个流程,但是如果在应用发布的时候带有太多的NSLog输出,那么肯定对App的性能有所影响,但是又不能不输出必要的信息查看,这个时候我们就可以使用一个宏定义来处理,在开发的时候使用debug模式,发布的时候我们使用release模式,这样在发布的时候App就不会在应用内部做大量的输出操作了。代码很简单:#

2016-01-14 22:26:14 6028

原创 AppStore App申请加速审核

有没有遇到前脚刚把应用发布上线,后面就发现应用存在一个致命的bug这种情况,然后等你修复bug后在提交审核又是一个漫长的过程,不过苹果还是很人性化的,Apple提供了一个加速审核的通道:https://developer.apple.com/contact/app-store/?topic=expedite 详情看下面: 除了上面的截图以外,中间还需要填写一些app的一些信息,加急能否申

2016-01-13 23:14:00 766

原创 ISO开发- Ad-Hoc包的使用

相信大家在开发的过程中都遇到过这样的问题,待项目开发准备结束的时候就要忙着测试了,在准备发布之前呢肯定要经过很多人很多次的测试,然后发现问题,修改完善后发布到App Store。苹果考虑到这个原因,就推出了人性化的AdHoc功能来实现发布前的用户测试。在之前的呢如果多个人要测试一个项目的话,首先就要使用Xcode把项目一个一个的安装到每个测试用户的手机上面,且不说每个测试设备系统的版本问题,就是光

2016-01-13 22:58:30 4980

原创 iOS开发中图片的一些处理操作(背景色,透明度,合成,大小)

iOS开发中常用的对图片的处理操作:一.更换图片的背景颜色/*** 改变图片背景为白色** @param image 图片源** @return 返回更改过背景后的图片*/+ (UIImage*) imageToTransparent:(UIImage*) image{ // 分配内存 const int imageWidth = image.size.wid

2016-01-13 22:04:40 6195

原创 iOS开发中有关NSMutableAttributedString的使用

一. 初始化方法-(id)initWithString:(NSString *)str; 例如:NSMutableAttributedString *attributeStr = [[NSMutableAttributedString alloc] initWithString:@"今天是个好天气"];-(id)initWithString:(NSString )str attributes:(N

2016-01-11 22:39:39 511

原创 更改图片背景颜色

相信在iOS开发中很多人都遇到过处理图片的问题,比如扣掉图片的背景颜色,使图片变成透明的,或者更换图片的背景颜色。现在项目中用到了图片的处理操作,经过反复查找最终得出了这样一个方法。+ (UIImage*) imageToTransparent:(UIImage*) image{ // 分配内存 const int imageWidth = image.size.width;

2016-01-07 21:55:16 626

原创 The entitlements specified in your application’s Code Signing Entitlements file do not match those s

真机测试过程中,更换PP文件后就出现了The entitlements specified in your application’s Code Signing Entitlements file do not match those specified in your provisioning profile这样的错误,很是苦恼,反复检查证书什么的都没有问题,但是真机测试总是出错,最终找出了原因,

2016-01-07 21:39:37 455

原创 iOS隐藏状态栏

## iOS隐藏导航栏 ##在iOS开发中有两种隐藏状态栏的方法,具体操作请看下面:首先在info.plist中添加View controller-based status bar appearance,设置为YES,这个时候View controller对status bar的控制级别要优先于application的设置。然后添加下面方法:-(void)viewWillAppear:(BOOL

2016-01-06 22:43:39 447

原创 IOS中随机数的获取

iOS开发中获取随机数的方法

2016-01-05 22:05:58 351

iOS中动画那点事

iOS动画,UIKit动画 ,Core-Animation动画

2016-04-22

iOS中相册的创建和相片的保存

方便的创建属于我们自己的相册,同时也可以保存相片到我们自己创建的相册!

2016-03-16

UIBezierPath画图

iOS中UIBezierPath画图的基本使用。

2016-03-07

ScrollView实现循环轮播图

Demo实现了一般App首页广告位的图片循环滚动播放功能!

2016-03-01

Crop-Image

实现了图片经过平移,缩放,旋转手势后的完美剪切

2016-03-01

iOS开发中的快捷键

在iOS开发中遇到了一些常用的快捷键,索性就总结了一下比较常用的,有利于快速开发哦!对于开发大牛我觉得快捷键是必不可少的!

2016-01-06

键值编码与键值观察

对iOS开发中常用的KVC和KVO技术的简单总结

2016-01-06

iOS多线程简单介绍

iOS中常见的多线程技术的简单总结,比较适合新手参考。

2016-01-06

空空如也

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

TA关注的人

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