iOS
文章平均质量分 66
花花猪
QQ:2453347403,有需要的同学可以加好友共同讨论
展开
-
iOS 自动化生成API文档
Xcode 自带的工具 : headerdoc2html 这种自动化生成需要注释的格式为/*!*/如果不是这种格式的注释,不管怎么跑命令会报错,comment not found;第三方:Doxygen /***/使用这个第三方工具需要注意的是,目录所在的路径中不能有中文 。否则可能会报错找不到INPUT Source 或者 outPUT so原创 2016-01-15 15:36:25 · 708 阅读 · 0 评论 -
iOS-Core-Animation-Advanced-Techniques(六)
转自:FeiXu(github主页) 基于定时器的动画和性能调优基于定时器的动画我可以指导你,但是你必须按照我说的做。 -- 骇客帝国在第10章“缓冲”中,我们研究了CAMediaTimingFunction,它是一个通过控制动画缓冲来模拟物理效果例如加速或者减速来增强现实感的东西,那么如果想更加真实地模拟物理交互或者实时根据用户输入修改转载 2015-06-23 10:46:21 · 1071 阅读 · 0 评论 -
iOS-Core-Animation-Advanced-Techniques(一)
图层树、寄宿图以及图层几何学(一)图层的树状结构巨妖有图层,洋葱也有图层,你有吗?我们都有图层 -- 史莱克Core Animation其实是一个令人误解的命名。你可能认为它只是用来做动画的,但实际上它是从一个叫做Layer Kit这么一个不怎么和动画有关的名字演变而来,所以做动画这只是Core Animation特性的冰山一角。Core Animation是一个复转载 2015-06-23 10:23:18 · 1256 阅读 · 0 评论 -
iOS-Core-Animation-Advanced-Techniques(四)
隐式动画和显式动画隐式动画按照我的意思去做,而不是我说的。 -- 埃德娜,辛普森我们在第一部分讨论了Core Animation除了动画之外可以做到的任何事情。但是动画师Core Animation库一个非常显著的特性。这一章我们来看看它是怎么做到的。具体来说,我们先来讨论框架自动完成的隐式动画(除非你明确禁用了这个功能)。事务Core Animatio转载 2015-06-23 10:32:58 · 1149 阅读 · 0 评论 -
iOS-Core-Animation-Advanced-Techniques(二)
视觉效果和变换(四)视觉效果嗯,园和椭圆还不错,但如果是带圆角的矩形呢?我们现在能做到那样了么?史蒂芬·乔布斯我们在第三章『图层几何学』中讨论了图层的frame,第二章『寄宿图』则讨论了图层的寄宿图。但是图层不仅仅可以是图片或是颜色的容器;还有一系列内建的特性使得创造美丽优雅的令人深刻的界面元素成为可能。在这一章,我们将会探索一些能够通过使用CALaye转载 2015-06-23 10:27:42 · 859 阅读 · 0 评论 -
Copy和MutableCopy
NSObject子类对象如果想要实现拷贝,就需要实现NSCopying,NSMutableCopying协议。理论上说Copy实现的是浅拷贝:retain当前对象的指针,retainCount+1;mutableCopy实现的是深拷贝:创建新的内存空间并返回地址,retainCount = 1;个人猜测,之所以这么说因为系统的NSString,NSArray,NSDictionary等原创 2015-05-06 21:26:55 · 1799 阅读 · 0 评论 -
CAPropertyAnimation additive
再做一些shaking动画时,通常会指定对称的左右几个点,加入都CAKeyframeAnimation.values中。但是这就需要计算present layer的点,不太方便。看了下CAPropertyAnimation有个属性是additive,这个属性根据当前的渲染层的值加上value生成新的渲染的值,也就是动画时present layer的值。Deter原创 2015-05-06 14:36:35 · 2489 阅读 · 0 评论 -
IOS Data Storage
应用又被拒绝了,原因是IOS Data Storage 为了区分清楚sandbox里边各个目录的作用,我去看了下apple文档,sandbox目录介绍总结下:Documents:存放用户产生的数据,比如用户下载的视频图书,浏览记录等。但是对于位于Documents中可在生成或可重新下载的资源,必须标记为不能通过iTunes恢复的类型(NSURLIsExcludedFromBackup原创 2015-05-05 15:59:03 · 1056 阅读 · 0 评论 -
iOS网络开发编程之NSURLConnection详解
iOS网络层常用的库如ASIHTTPRequest,AFNetworking,MKNetworkKit等知名的第三方库。随着ASI不再更新,楼主基本上也跟着大部队用了AF。AF用的是Cocoa层的API-NSURLConnection。以前只是简简单单的用过NSURLConnection,很多相关的方法都不是很熟悉,今天抽空了系统的学习了下,晚上顺道总结下NSURLConnection的用法。原创 2015-03-03 21:07:40 · 3024 阅读 · 0 评论 -
CoreText基本知识
第一次比较深入接触iOS文字排版相关内容是在12年底,实现某IM项目聊天内容的图文混排,照着nimbus的AttributedLabel和Raywenderlish上的这篇文章《Core Text Tutorial for iOS: Making a Magazine App》改出了一个比较适用于聊天内容展现的图文混排(文字和表情)控件。 选择自己写而不是直接使用现有第三方库的转载 2015-02-13 12:49:37 · 808 阅读 · 0 评论 -
iOS-关联属性Associate
iOS分类用的比较多,基本都是扩展方法,如果想要扩展属性,就要用到runtime了,使用objc_getAssociatedObjectobjc_setAssociatedObject上代码:给Test新建一个分类,关联一个属性name;#import "Test.h"#import "Property.h"@interfac原创 2015-02-27 23:55:48 · 2097 阅读 · 0 评论 -
iOS-Core-Animation-Advanced-Techniques(三)
专用图层复杂的组织都是专门化的--Catharine R. Stimpson到目前为止,我们已经探讨过CALayer类了,同时我们也了解到了一些非常有用的绘图和动画功能。但是Core Animation图层不仅仅能作用于图片和颜色而已。本章就会学习其他的一些图层类,进一步扩展使用Core Animation绘图的能力。CAShapeLayer在第四章『视觉效果』我们转载 2015-06-23 10:31:07 · 1009 阅读 · 0 评论 -
iOS-Core-Animation-Advanced-Techniques(七)
转自:FeiXu(github主页)高效绘图、图像IO以及图层性能高效绘图不必要的效率考虑往往是性能问题的万恶之源。 ——William Allan Wulf在第12章『速度的曲率』我们学习如何用Instruments来诊断Core Animation性能问题。在构建一个iOS app的时候会遇到很多潜在的性能陷阱,但是在本章我们将着眼于有关绘制的性能问题。转载 2015-06-23 10:47:37 · 1089 阅读 · 0 评论 -
iOS-Core-Animation-Advanced-Techniques(五)
转自:FeiXu(github主页) 图层时间和缓冲图层时间时间和空间最大的区别在于,时间不能被复用 -- 弗斯特梅里克在上面两章中,我们探讨了可以用CAAnimation和它的子类实现的多种图层动画。动画的发生是需要持续一段时间的,所以计时对整个概念来说至关重要。在这一章中,我们来看看CAMediaTiming,看看Core Animation是如何跟踪时间的转载 2015-06-23 10:39:53 · 782 阅读 · 0 评论 -
iOS bitcode实战
关于bitcode的介绍,直接看下边两篇:理解Bitcode:一种中间代码 Xcode 7 Bitcode的工作流程及安全性评估 大牛们已经把bitcode说的很清楚了,我结合自己的实践梳理出以下流程:主工程引用静态库有两种形式(参考:在iOS中创建静态库)①:代码依赖②:引用.a 对应的,让静态库支持bitcode也有不同的地方。先来看第一种:直接上图配置原创 2016-02-02 20:38:29 · 1029 阅读 · 0 评论 -
xcodebuild打包ipa
Xcode6之后打包IPA只有拥有证书还不够,还需要登陆账号。使用xcodebuild可以绕过账号第一:clean xcodebuild clean -projecttest.xcodeproj -configuration Release -alltargets第二:生成xcarchive文件xcodebuild archive -projecttes原创 2016-02-14 17:21:31 · 1025 阅读 · 0 评论 -
NSURLSessionConfiguration API详解
一、NSURLSessionConfiguration的描述NSURLSessionConfiguration为NSURLSession配置一些请求所需要的策略。如:超时、缓存策略、链接需求的。NSURLSession会拷贝configuration。所以session一旦初始化结束就不会再更改configuration。除非初始化一个session。重要:如果原创 2016-01-08 15:16:07 · 9790 阅读 · 0 评论 -
帮5买面试总结
写在前边:时间久远,个数跟次序记不清楚了,挑着印象深刻的来些。 一、笔试1.详述delegate , block , notification,KVO2.分类能否扩展属性,若能则如何实现?3.常用的设计模式有哪些,如何实现,画出UML图更佳。4.有一个无序的int数组array,将其排序,再找出比a原创 2015-12-02 09:34:55 · 820 阅读 · 2 评论 -
重新认识ARC
虽然用了很久的ARC,感受了代码简洁。但是对ARC底层实现并不了解。今天抽空研究了下,做些简单地总结。一、__strong1.局部变量①.对于局部变量来说,在超出作用域的地方由编译器自动插入release。{id __strong objc = [NSObject new];}==>> (大概转化为){id objc = objc_msgSend(objc原创 2015-12-02 11:09:23 · 1017 阅读 · 0 评论 -
dispatch_barrier_async 隐藏的坑
今天在看文档的时候无意中发现的一个坑* When submitted to a a global queue or to a queue not created with the * DISPATCH_QUEUE_CONCURRENT attribute, barrier blocks behave identically to * blocks submitted w原创 2015-12-11 15:10:45 · 2448 阅读 · 0 评论 -
Swift Selector
看了喵神的Swifter 100个必备的小tips总结下swift中不支持@selector关键字,将SEL重新定义为结构体了。但是NSSelectorFromString()依然可以使用,但是获取方法名的规则有点变动。1.不带参数的方法func normalSelector() { NSLog("normal") }原创 2015-11-13 11:31:28 · 2039 阅读 · 0 评论 -
Swift Protocol optional
Objective-C中实现Protocol的可选直接使用关键字@Optional就好了。 然而在Swift中就变的比较绕了。==================Swift2.0之前========================swift实际不提供可选协议,但是为了对接Objective-C,没办法就使用@objc +optional来达到目的。具体实例参考如下原创 2015-11-13 15:24:56 · 2213 阅读 · 0 评论 -
IOS 宏定义
看喵神的宏定义的黑魔法学到了很多,在这里总结下。一、单个“#”的使用单个“#”表示将后面紧接的参数变成 C 字符串,如 :#define Name(pro) @#pro - (void)testName { NSLog(@"|%@|",Name(self.dataArray));}2015-10-20 11:34:45.691 Shadow[1878:71990原创 2015-10-20 11:43:43 · 1002 阅读 · 0 评论 -
iOS键盘与NSLayoutConstraint
xcode6开始,写界面基本都是用size classes +layoutContraint了,对于一般的静态页面,使用constrain简单快速还能支持横竖屏切换,high到爆!使用constraint实现的页面在viewDidAppear之后,想做什么动画原创 2015-06-01 22:51:50 · 1670 阅读 · 1 评论 -
自定义容器类ViewController
什么是Container View Controller?苹果文档是这么描述的: A container view controller contains content owned by other view controllers. 也就是说一个View Controller显示的某部分内容属于另一个View Controller,那么这个View转载 2015-02-10 13:31:03 · 1760 阅读 · 0 评论 -
CoreGraphics
Core Graphics属于媒体层,它负责疾呼所有在IOS屏幕上进行的绘图操作。创建任何界面元素时,iOS都是用Core Graphics来将这些元素绘制到窗口中去的。通过实现和重载Core Graphics的方法,可以创建自定义的界面元素。6.1 Core Graphics入门UIKit也依赖于它,#import 的时候会自动引入,而不需#importCore Grap转载 2015-01-22 17:10:36 · 868 阅读 · 0 评论 -
NSOperation并发实现
关于NSOperation的基本知识,点击查看我之前转发的博客: 猛戳这里 NSOperation实现并发有两种方式:①自定义NSOperation只需实现main方法,然后加入到NSOperationQueue②自定义NSOperation实现start,isExecuting,isFinished,isConnurrent,,然后【operation start】简单说下我自原创 2015-01-21 17:37:20 · 1443 阅读 · 1 评论 -
Xcode6 Constrain to margins
Xcode6多了个内边距, Constrain to margins 在stack overflow上边看到了一个帖子:楼主的约束莫名多了16像素空隙。一下是一些回复:In iOS 8 you now have the option to define your constrains relative to a predefined margin to the superview'原创 2014-12-18 11:11:04 · 9072 阅读 · 0 评论 -
CALayer扩展属性自定义CAAnimation动画
使用CA动画也有段时间了,相对都是比较基本的一些动画。使用的范围基本都是layer自己的animateble的属性。那对于CALayer子类扩展的属性该如何实现动画呢?我想做一个圆形的进度条,通过CABasicAnimation动画更新progress,效果如下:首先了解下layer自己的属性如果实现动画的。layer加载时会通过+ (BOOL)needsDisplayForKey原创 2015-01-07 15:07:11 · 2580 阅读 · 2 评论 -
Xcode6下学习autolayout 一
iOS8来了,Xcode也升级到6了,可是我连autolayout,甚至storyboard都不会用。手工码代码都是通过宏定义来适配界面的,所以在iOS7出来的时候也没有变更搭UI的习惯。现在iOS8出来了,sizeclass autolayout一时间铺天盖地。下的我半死,感觉自己落伍了。赶紧的要学习storyboard,autolayout。。。不过直到今天才终于有时间看下autola原创 2014-12-17 15:28:28 · 2854 阅读 · 0 评论 -
FMDB-FMDatabaseQueue
FMDB封装了SQLite3的方法,操作数据库变得很简单。原创 2014-11-18 22:49:50 · 7765 阅读 · 1 评论 -
Dispatch I/O
/*2 * Copyright (c) 2009-2011 Apple Inc. All rights reserved.3 *4 * @APPLE_APACHE_LICENSE_HEADER_START@5 *6 * Licensed under the Apache License, Version 2.0 (the "License");7 * you may not转载 2014-11-13 14:50:38 · 1924 阅读 · 0 评论 -
phonegap工程新建VC及其对应的.html,.js文件
如何新建可查看我之前的博客 http://blog.csdn.net/growinggiant/article/details/39669005原创 2014-10-27 16:01:18 · 936 阅读 · 0 评论 -
dispatch_set_target_queue一些理解
发现一个很有意思的方法 dispatch_set_target_queuetake原创 2014-11-13 13:04:44 · 7522 阅读 · 2 评论 -
dispatch queue 的一些理解
想向iOS高级进阶,学习一些线程只是是必不可少的。原创 2014-11-13 09:57:36 · 1230 阅读 · 1 评论 -
使用cocoapods创建cordova项目
需要的工具 : cocoapods ,如果没有安装,可参考 http://code4app.com/article/cocoapods-install-usage ,感谢小编的原创 2014-09-30 11:01:49 · 4876 阅读 · 3 评论 -
iOS phonegap 配置环境
首先配置环境 打开网址 docs原创 2014-09-29 14:11:43 · 1283 阅读 · 0 评论 -
Xcode6下学习autolayout 二
现在联系下autolayout创建三个大小相同label距离底部20,间距个20使用pin工具栏添加等大小,间距。步骤1:按住shift,选中三个label步骤2:添加约束添加完成后的效果如下:为了固定后添加的两个label,需要添加对齐约束步骤3:添加顶部(底部)对齐约束添加完成后的效原创 2014-12-18 09:38:47 · 1382 阅读 · 0 评论 -
自己实现的输入框控件
公司设计问我这样效果好不好做,正好赶上公司断网了,我就研究了下,感觉CAGroupAnimation加上CAShapeLayer可以实现,就写了下。最后也实现了。先来拆分小动画,1.背景框收缩2,placeholder组动画。①shapeLayerCGRect roundRect =CGRectInset(self.bounds,0, 10);原创 2015-01-28 11:46:08 · 1370 阅读 · 0 评论 -
手写NSLayoutContraint
Xcode6使用storyboard拖拖约束很快就搭建出来项目,针对有些不能拖的,还是需要手动实现约束的。稍微研究了下NSLayoutContraint,使用起来也还算是方便。+ (NSArray *)constraintsWithVisualFormat:(NSString *)format options:(NSLayoutFormatOptions)opts metrics:原创 2015-01-29 16:19:30 · 938 阅读 · 0 评论