自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 正确使用Block避免Cycle Retain和Crash

Block简介Block作为C语言的扩展,并不是高新技术,和其他语言的闭包或lambda表达式是一回事。需要注意的是由于Objective-C在iOS中不支持GC机制,使用Block必须自己管理内存,而内存管理正是使用Block坑最多的地方,错误的内存管理 要么导致return cycle内存泄漏要么内存被提前释放导致crash。 Block的使用很像函数指针,不过与函数最大的不同是:Bl

2014-06-24 11:43:31 786

原创 runtime blog

Objective-C runtime之运行时的基本特点(一)

2014-04-17 15:35:21 652

原创 git 获取历史版本

git 获取历史版本的的方法1.进入代码仓库目录  2.输入 gitk,查看需要回退的版本号,copy3.建立一个新的分支  git branck 分支名 版本号       如: git branch version4 927978d94b57d8da0f6ea62b098663fb60ce32364.checkout新的分支    git che

2014-04-02 11:16:16 4729

转载 iOS开发者有价值的工具集

iOS开发者有价值的工具集一直比较推崇聪明地工作要远胜于刻苦地工作。使用正确的工具可以帮你更好地解决问题,直达目标。我们都遇见过一些功能非常强大但又价值不菲的工具,虽然价格贵点,但却是可以帮你快速解决问题,节省时间和人力,从而让你更高效地工作。 此前我们介绍过很多关于iOS开发的工具(比如iOS/OS X开发:各种工具快到碗里来;你用哪种工具进行iOS app自

2014-03-31 10:56:31 742

转载 提高Interface Builder高效工作的8个技巧

提高Interface Builder高效工作的8个技巧本文译自:8 Tips for working effectively with Interface Builder(需翻墙)先来看看目录:介绍使view的Size与view中的Content相适应按住option键—观察所选中view与另外view边缘之间的距离Editor –> Embed In Vie

2014-03-28 09:40:57 676

转载 LLDB调试命令初探

LLDB调试命令初探如果你在平时的开发中从未使用过调试器,那你恐怕不知道一个调试器的作用有多大。你可能只满足于通过printf或者NSLog输出信息用于调试。但你只要试着尝试在调试中开始使用调试器LLDB,你会马上感受到调试器给你带来的便利。LLDB是LLVM下的调试器。Xcode从4.0开始编译器开始改用LLVM,相应的调试器也从gdb改为LLDB。而从 Xcode5.0

2014-03-28 09:30:31 857

转载 定制iOS 7中的导航栏和状态栏

原文注:本文译自Customizing Navigation Bar and Status Bar in iOS 7近期,跟大多数开发者一样,我也正忙于对程序进行升级以适配iOS 7。最新的iOS 7外观上有大量的改动。从开发者的角度来看,导航栏和状态栏就发生了明显的变化。状态栏现在是半透明的了,这也就意味着导航栏会显示在状态栏后面。有些情况下,导航栏的背景图片可以

2014-03-27 15:06:44 610

转载 宏定义的黑魔法 - 宏菜鸟起飞手册

转自OneV's Den的博客 宏定义在C系开发中可以说占有举足轻重的作用。底层框架自不必说,为了编译优化和方便,以及跨平台能力,宏被大量使用,可以说底层开发离开define将寸步难行。而在更高层级进行开发时,我们会将更多的重心放在业务逻辑上,似乎对宏的使用和依赖并不多。但是使用宏定义的好处是不言自明的,在节省工作量的同时,代码可读性大大增加。 如果想成为一个能写出

2014-03-19 11:40:02 655

转载 NSPredicate 模糊、精确、查询

简述:Cocoa框架中的NSPredicate用于查询,原理和用法都类似于SQL中的where,作用相当于数据库的过滤取。定义(最常用到的方法):[cpp] view plaincopyNSPredicate *ca = [NSPredicate predicateWithFormat:(NSString *), ...]

2014-03-18 15:52:14 810

转载 iOS多线程编程之NSThread的使用

1、简介:1.1 iOS有三种多线程编程的技术,分别是:1.、NSThread 2、Cocoa NSOperation (iOS多线程编程之NSOperation和NSOperationQueue的使用)3、GCD  全称:Grand Central Dispatch( iOS多线程编程之Grand Central Dispatch(GCD)介绍和使用)这三

2014-03-03 23:18:42 695

转载 在iOS中创建静态库

本文由 Migrant [博客]翻译自 Creating a Static Library in iOS Tutorial。 如果您有不错的原创或译文,欢迎提交给我们,更欢迎其他朋友加入我们的翻译小组(联系qq:2408167315)。 ===================================================================

2013-12-12 16:34:35 848

转载 UIView 中的控件事件穿透 Passthrough 的实现

我们在有多个 UIView 层叠时,比如一个按钮被一个 UIView 遮盖时,想要在点击最上层的 UIView 时能触发按钮的相应事件,我们该如何实现呢,初步可以想到几种办法:1. 把按钮上层的所有 UIView 的 userInteractionEnabled 属性设置为 NO,要是 UIView 有自己的交互事件该如何办呢?而且这个 userInteractionEnabled 不能动

2013-12-06 17:44:47 986

转载 UIWebView相关

1.只有使用loadRequest:加载网页,才能对之后的链接操作做goBack,goForward操作,即canGoBack,canGoForward才有可能返回YES.   使用loadHTMLString,loadData都不可以.  并且在load之后通过stringByEvaluatingJavaScriptFromString对网页增加的内容,在  NSStri

2013-10-29 10:58:58 1304

转载 iOS开发非常用库

———————-   API    ———————-DataKit          用Node做后端,前端封装库的 框架 ———————-   Auth    ———————-MPOAuth ———————-    第三方服务     ———————-hoptoad-ios           收集app的错误的第三方服务Parse

2013-10-15 17:14:14 2135

转载 iOS 7 页面布局

原文:Redesign Your App for iOS 7 之 页面布局前言iOS7是目前iOS史上最颠覆的一次改版。它的出现令人兴奋,因为它将会带我们进入一个全新的时代;它的到来也让我们忧心,因为它颠覆了一切,包括我们过去做过的很多努力。但是,相信大家乐意为这个全新时代做更多的努力,因为,它值得期待。 最近打算写一系列针对iOS7新特

2013-10-15 15:35:35 1423

转载 Xcode 4 设置App版本号

原文:ios开发答疑录系列​---Xcode 4 设置App版本号刚接触ios开发的童鞋应该会对于app版本号吗有些疑问,因为target不仅仅在summary中有版本号,同样在Info.plist等地方也有版本号码的地方,一头乱码,不知吗?其实xcode在summary中已经将app最基本的设置进行了全面的封装,其余的plist,build setting等地方会跟着summary设置的改变

2013-10-14 10:46:18 1042

转载 设备的唯一标识

英文原文:In iOS 7 and later, if you ask for the MAC address of an iOS device, the system returns the value 02:00:00:00:00:00. If you need to identify the device, use the identifierForVendor property o

2013-10-11 15:30:31 3257

转载 一步一步教你做ios推送

原文:一步一步教你做ios推送最近在研究ios的推送问题,遇到了一些问题,最终整理了一下。放在这里和大家分享APNS的推送机制首先我们看一下苹果官方给出的对ios推送机制的解释。如下图 Provider就是我们自己程序的后台服务器,APNS是Apple Push Notification Service的缩写,也就是苹果的推送服务器。

2013-10-09 11:27:33 789

转载 开发者所需要知道的iOS7 SDK新特性

原文链接:开发者所需要知道的iOS7 SDK新特性iOS 7春风又绿加州岸,物是人非又一年。WWDC 2013 keynote落下帷幕,新的iOS开发旅程也由此开启。在iOS7界面重大变革的背后,开发者们需要知道的又有哪些呢。同去年一样,我会先简单纵览地介绍iOS7中我个人认为开发者需要着重关注和学习的内容,之后再陆续对自己感兴趣章节进行探索。计划继承类似WWDC2012的

2013-09-23 17:34:47 1017

原创 出现( linker command failed with exit code 1)错误总结

这种问题,通常出现在添加第三方库文件或者多人开发时。这种问题一般是找不到文件而导致的链接错误。 我们可以从如下几个方面着手排查。1.以如下错误为例,如果是多人开发,你同步完成后发现出现如下的错误。Undefined symbols for architecture armv7: "_OBJC_CLASS_$_MyPageLogViewController", refer

2013-09-17 18:26:04 90282 4

转载 iOS与Java服务器GZip压缩问题

昨天搞了一天的GZip压缩,试了三种方式(libz库,ZipArchive,ASIHttpRequest),一开始都不成功。理论上三个应该都能用的,但我都不行。等我试到第三种方式的时候才知道,不是我的问题,而是后台的问题(Java端输出方式一会再说)。今天就总结一下,写写iOS与Java服务器获取压缩数据的方法吧。一、客户端-服务端数据压缩解压流程(ASIHttpRequest)客

2013-08-07 18:06:08 2598

转载 App被拒原因

1、程序有重大bug,程序不能启动,或者中途退出。2、绕过苹果的付费渠道,我们之前游戏里的用兑换码兑换金币。3、游戏里有实物奖励的话,一定要说清楚,奖励由本公司负责,和苹果没有关系。4、用到苹果的标志。(应用的设计和Apple的Logo风格太像了也会被拒)5、网络功能不能正常访问。6、图标不能点击,不能点击的图标要置灰,或者直接隐藏。7、没有设置default页,启动画面为

2013-08-07 17:10:20 914

转载 Quartz 2D 学习总结

理论知识:1.视图绘画周期:  DrawRect方法,在任何时候,当视图的一部分需要重画时会调用。  触发调用的四种情况:     1>对遮挡您的视图的其它视图进行移动或删除操作。    2>将视图的hidden属性声明设置为NO,使其从隐藏状态变为可见。    3>将视图滚出屏幕,然后再重新回到屏幕上。    4>显式调用视图的setNeedsDisplay或者s

2013-08-05 16:35:08 651

原创 Quartz 2D 自定义富文本控件

之前项目需要展示富文本,包括文字、表情、特殊字符(如@xxx,链接)。网上查找没找到合适的,要不只支持文字+表情,要不只支持文字+特殊字符,或者全是UILabel+UIImageVIew贴出来的(这个内存压力山大啊有木有),还有一种方案是加载HTML,这个可是需要强大的技术支撑,可惜我们这边不给力。无奈之下只能自己写了个自定义的控件,是用Quartz 2D绘制的,写完后测试效果基本达到要求

2013-08-02 10:44:09 967

转载 Quartz 2D 函数小结

0 CGContextRef context = UIGraphicsGetCurrentContext(); 设置上下文1 CGContextMoveToPoint 开始画线2 CGContextAddLineToPoint 画直线4 CGContextAddEllipseInRect 画一椭圆4 CGContextSetLineCap 设置线条终点形状4 CGContext

2013-08-01 17:33:53 880

转载 iOS手势识别的详细使用

iOS手势识别的详细使用(拖动,缩放,旋转,点击,手势依赖,自定义手势)1、UIGestureRecognizer介绍手势识别在iOS上非常重要,手势操作移动设备的重要特征,极大的增加了移动设备使用便捷性。iOS系统在3.2以后,为方便开发这使用一些常用的手势,提供了UIGestureRecognizer类。手势识别UIGestureRecognizer类是个抽象类

2013-07-24 19:15:38 661

转载 iphone开发中的一些小技巧

1、如果在程序中想对某张图片进行处理的话(得到某张图片的一部分)可一用以下代码: UIImage *image = [UIImage imageNamed:filename];CGImageRef imageRef = image.CGImage;CGRect rect = CGRectMake(origin.x, origin.y ,size.width, siz

2013-07-22 10:21:47 908

转载 iOS中使用blend改变图片颜色

iOS中使用blend改变图片颜色使用Blend处理图片颜色最近对Core Animation和Core Graphics的内容东西比较感兴趣,自己之前也在这块相对薄弱,趁此机会也想补习一下这块的内容,所以之后几篇可能都会是对CA和CG学习的记录的文章。在应用里一个很常见的需求是主题变换:同样的图标,同样的素材,但是需要按照用户喜爱变为不同的颜色。在iOS5和6的S

2013-07-19 14:16:51 698

转载 UICollectionView_2

原文链接: WWDC 2012 Session笔记——219 Advanced Collection Views and Building Custom Layouts这是博主的WWDC2012笔记系列中的一篇,完整的笔记列表可以参看这里。如果您是首次来到本站,也许您会有兴趣通过RSS,或者通过页面下方的邮件订阅的方式订阅本站。在上一篇UICollectio

2013-07-04 18:38:02 1531

转载 UICollectionView_1

原文链接:WWDC 2012 Session笔记——205 Introducing Collection Views这是博主的WWDC2012笔记系列中的一篇,完整的笔记列表可以参看这里。如果您是首次来到本站,也许您会有兴趣通过RSS,或者通过页面下方的邮件订阅的方式订阅本站。在之前的iOS6 SDK新特性前瞻中我曾经提到过UICollectionView,当时只把Coll

2013-07-04 18:30:22 965

原创 iOS 调用地图导航

链接:http://blog.sina.com.cn/s/blog_945590aa01019dc2.html在IOS6.0系统后,苹果自己绑定了自家的地图包,因此兼容IOS5.0与IOS6.0地图导航,需要分两个步骤1.首先#define SYSTEM_VERSION_LESS_THAN(v) ([[[UIDevice currentDevice] systemVersion] co

2013-07-03 13:54:33 5944 2

转载 iPhone实战:定位与地图

链接:iPhone实战:定位与地图个人觉得地理位置这部分的知识其实是相当有趣的。说到定位其实在大多数的社交软件中都有这样的一个功能,用户可以共享自己的位置并且查看其他用户的位置,从而更容易地结交一些附近或者在同一地区的朋友,又或者在地图上显示自己的当前位置,并且显示附近的餐厅或者咖啡厅。这些功能看起来是挺复杂,但在实际的开发过程中,iOS为我们封装了大部分的功能,让我们不需要学

2013-07-03 10:19:53 1034

原创 绘制左右翻转的图片

- (UIImage *)overturnImage:(UIImage *)image {   CGSize size = image.size;    UIGraphicsBeginImageContext(size);    CGContextRef context =UIGraphicsGetCurrentContext();       CGCo

2013-06-27 19:57:41 876

转载 iOS开发图像处理--绘制图片上下颠倒

使用CGContextDrawImage绘制图片上下颠倒  首先要说的是,在iOS的不同framework中使用着不同的坐标系 :UIKit - y轴向下Core Graphics(Quartz) - y轴向上OpenGL ES - y轴向上   UIKit是iPhone SDK的Cocoa Touch层的核心framework,是iPhone应用程序图形界面和

2013-06-27 19:25:56 765

转载 CGAffineTransform相关函数2

- (void)willAnimateFirstHalfOfRotationToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation   duration:(NSTimeInterval)duration{                    if (toInterfaceOrientation =

2013-06-25 17:27:59 578

转载 CGAffineTransform相关函数1

CGAffineTransform相关函数顺便记录一些常量,以后用的着!#define M_E         2.71828182845904523536028747135266250   e#define M_LOG2E     1.44269504088896340735992468100189214   log 2e#define M_LOG10E

2013-06-25 17:27:24 682

转载 iOS5中UIViewController的新方法

原文前言在苹果的WWDC2011大会视频的 《Session 101 - What’s New in Cocoa》 和 《Session 102 - Implementing UIViewController Containment》 中介绍了苹果在iOS5中给UIViewController新增加的5方法以及一个属性:12345678

2013-06-25 12:35:28 591

转载 ARC内存管理模式概要

1.ARC基本原则你还像往常一样编程,只是不能再调用retain,release,autorelease了,这基本上就是ARC的全部。2.ARC是什么认识到 ARC 是 objective-c 编译器的一个特性是很重要的,因此与 ARC 相关的一切都发 生在构建你的程序时。ARC 不是一个运行时特性(有一小部分例外,就是弱指针系统), 它也不是你从其他语言了解的

2013-06-24 16:32:09 1877

转载 UIScrollView的属性总结

UIScrollView的属性总结在滚动过程当中,其实是在修改原点坐标 当手指触摸后, scroll view会暂时拦截触摸事件,使用一个 计时器,假如在计时器到点后,没有发生手指移动事件, 那么,scroll view发送tracking events到被点击的subview 假如在计时器到点前,发生了移动事件,那么 scroll view 取消tracking

2013-06-24 16:10:06 912

原创 一些关于动画的资料

iphone 图表抖动效果实现-左上角小黑叉实习(层的使用)关键帧动画-五角星动画-在层上画出五角星关键帧动画CAKeyframeAnimation动画组CAAnimationGroup显式动画AnimationCALayer 以及时间模型CABasicAnimation用法

2013-06-20 16:52:50 865

空空如也

空空如也

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

TA关注的人

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