自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Bannings的专栏

self.life("iOS developer")

原创 如何设计一个 iOS 控件?(iOS 控件完全解析)

> 代码的等级:可编译、可运行、可测试、可读、可维护、可复用 --- # 前言 一个控件从外在特征来说,主要是封装这几点: > * 交互方式 * 显示样式 * 数据使用 对外在特征的封装,能让我们在多种环境下达到 PM 对产品的要求,并且提到代码复用率,使维护工作保持在一个相对较...

2015-05-25 11:35:22 36559 30

原创 Swift 绘图板功能完善以及终极优化

转载请注明出处:http://blog.csdn.net/zhangao0086/article/details/45289475。 前文总结接着这篇:Swift 全功能的绘图板开发,虽然在上一篇中我们已经完成了这些功能: 支持铅笔绘图(画点) 支持画直线 支持一些简单的图形(矩形、圆形等) 做一...

2015-04-30 23:45:13 6907 5

原创 Swift 全功能的绘图板开发

转载请注明出处:http://blog.csdn.net/zhangao0086/article/details/43836789。 要做一个全功能的绘图板,至少要支持以下这些功能: 支持铅笔绘图(画点) 支持画直线 支持一些简单的图形(矩形、圆形等) 做一个真正的橡皮擦 能设置画笔的粗细 能设...

2015-03-29 21:20:44 18289 25

原创 iOS8 Core Image In Swift:视频实时滤镜

Core Image是一个很强大的框架。它可以让你简单地应用各种滤镜来处理图像,比如修改鲜艳程度, 色泽, 或者曝光。 它利用GPU(或者CPU)来非常快速、甚至实时地处理图像数据和视频的帧。并且隐藏了底层图形处理的所有细节,通过提供的API就能简单的使用了,无须关心OpenGL或者OpenGL ...

2014-09-28 17:10:36 30376 25

原创 iOS8 Core Image In Swift:人脸检测以及马赛克

Core Image是一个很强大的框架。它可以让你简单地应用各种滤镜来处理图像,比如修改鲜艳程度, 色泽, 或者曝光。 它利用GPU(或者CPU)来非常快速、甚至实时地处理图像数据和视频的帧。并且隐藏了底层图形处理的所有细节,通过提供的API就能简单的使用了,无须关心OpenGL或者OpenGL ...

2014-09-20 09:43:49 20950 13

原创 iOS8 Core Image In Swift:更复杂的滤镜

Core Image是一个很强大的框架。它可以让你简单地应用各种滤镜来处理图像,比如修改鲜艳程度, 色泽, 或者曝光。 它利用GPU(或者CPU)来非常快速、甚至实时地处理图像数据和视频的帧。并且隐藏了底层图形处理的所有细节,通过提供的API就能简单的使用了,无须关心OpenGL或者OpenGL ...

2014-09-12 00:52:19 25337 15

原创 iOS8 Core Image In Swift:自动改善图像以及内置滤镜的使用

Core Image是一个很强大的框架。它可以让你简单地应用各种滤镜来处理图像,比如修改鲜艳程度, 色泽, 或者曝光。 它利用GPU(或者CPU)来非常快速、甚至实时地处理图像数据和视频的帧。并且隐藏了底层图形处理的所有细节,通过提供的API就能简单的使用了,无须关心OpenGL或者OpenGL ...

2014-09-06 23:33:29 23376 3

原创 iOS 自定义页面的切换动画与交互动画 By Swift

在iOS7之前,开发者为了寻求自定义Navigation Controller的Push/Pop动画,只能受限于子类化一个UINavigationController,或是用自定义的动画去覆盖它。但是随着iOS7的到来,Apple针对开发者推出了新的工具,以更灵活地方式管理UIViewContro...

2014-08-11 17:30:48 43629 16

原创 Xcode及模拟器SDK下载

现在不会有人想在 Xcode 里安装旧版的模拟器了,本篇不再维护 --------------------------------------------------------------------------- 如果你嫌在 App Store 下载 Xcode 太慢,你也可以选择从网络上...

2014-08-11 13:39:57 147368 152

原创 iOS 实现脉冲雷达以及动态增减元素 By Swift

Swift经过Xcode6 Beta4一版更新后,基本上已经可以作为生产工具了,虽然有一些地方和ObjC比起来要“落后”一些,但也无伤大雅。这里就用Xcode6 Beta4+iOS SDK 8.0开发,如果用ObjC的话,只需把某些语法和调用方式替换一下就可以了。

2014-07-28 01:31:12 15982 7

原创 用 Houston 在本地调试远程通知

Houston 的背景Houston 在 GitHub 上的地址:https://github.com/nomad/Houston,作者又是Mattt Thompson,简直是惨无人道啊,又高产,又有质量Houston 能让我们在本地、甚至终端很方便的调试远程通知。安装首先在终端安装:$ gem ...

2015-05-03 02:04:07 3842 1

原创 仿网易云音乐的播放进度条

仿网易云音乐的播放进度条,有三种状态:播放、暂停和拖动,只是实现了动画和主要的交互逻辑,其他细节(如暂停音乐的播放等)还需要自己完善:DKPlayerBar 是继承于UIControl的,如果想获取播放\暂停的事件建议用标准的addTarget方法:[playerBar addTarget:sel...

2015-05-02 16:00:23 8761 1

原创 聊聊 iOS 开发

做开发到一定程度后就会面临“转职”,是转向更深的技术还是工程管理值得考虑啊。。 行业现状虽然近几年有大量的开发者涌入移动端,社会上的各种培训机构也越来越多,但是优秀的 iOS 开发者在行业内仍然很少,这一方面是由于创业者很多,另一方面是因为技术更新换代很快,而且开发也需要长时间的经验积累,以近几...

2015-04-24 22:43:07 6781 19

原创 《像外行一样思考,像专家一样实践》---产生创新的过程

科学工作者申明某件事情可行的时候,基本上他不会错,但当他说不可能的时候,他很可能错了。 发现极限的唯一方法就是超越极限,尝试向稍微超越这个极限的领域迈进、冒险。 无论是哪种技术,只要它是非常先进的,那看起来都跟魔术没什么区别。

2015-04-18 21:38:45 2351 1

原创 《Head First 设计模式》整理

对《Head First 设计模式》中的常用设计模式的整理,其实很多模式我们在开发中都有用到,但是在此之前没有一种理论基础支撑自己,有了这些知识后,更有利于做好程序的设计工作,以及遇到一些设计问题时知道如何取舍。策略模式作用通过组合不同的算法,为系统提供运行时动态地改变行为的功能,使系统具有更大的...

2015-04-11 00:56:51 4066 0

原创 TestFlight Beta 备忘

用iTunes Connect提供的TestFlight功能可以确保我们在设备上测试的版本和App Store上将要发行的版本是同一个。 TestFlight仅支持iOS 8及后续版本,并且需要从App Store里安装TestFlight app。 分为内部测试和外部测试两种: 内部测试 ...

2015-04-07 13:30:36 3340 0

原创 Swift Core Data 图片存储与读取Demo

实体的模型定义: 实体的class定义:@objc(ImageEntity) class ImageEntity: NSManagedObject { @NSManaged var imageData: NSData }存储:@IBAction func saveImageToCoreD...

2015-03-20 23:08:37 10212 0

原创 Swift Nullability and Objective-C

通过Bridging-Header文件,Swift可以与Objective-C无缝调用,但是Swift与Objective-C有一个很大的不同点:Swift支持Optional类型。比如NSView和NSView?,在Objective-C里对此只有一种表示,即NSView *,既可以用来表示该V...

2015-03-18 18:59:51 6552 4

原创 FMDB 在多线程中的使用

在App中保持一个FMDatabaseQueue的实例,并在所有的线程中都只使用这一个实例。[FMDatabaseQueue databaseQueueWithPath:path]FMDatabaseQueue虽然看似一个队列,实际上它本身并不是,它通过内部创建一个Serial的dispatch_...

2015-03-12 16:05:50 24357 6

原创 Xcode 插件失效的临时解决方案

对还没有支持Xcode 6.2的插件有效,Alcatraz 的新版已经支持。 进入到插件目录 ~/Library/Application Support/Developer/Shared/Xcode/Plugins 显示插件的包内容 编辑Info.plist文件 展开DVTPlugInCompat...

2015-03-11 11:24:18 19692 20

原创 iOS Core Data的returnsObjectsAsFaults属性

这个属性是用来做优化的,但是有时候反而会降低性能,我跟你打个简单的比方,假如你有一个Department对象,它和Employee对象是一对多的关系(比如一个部门有100个员工),当你加载Department的时候,它包含的所有Employee也被加载了,此时如果returnsObjectsAsF...

2015-03-08 10:15:29 5019 0

原创 iOS id类型的方法调用

用id类型调用了count方法,此时编译器会遍历所有的可见头的count方法,编译器当然会找到多个定义,因为count方法在NSArray,NSSet等等这些类上也有实现,而且我的TestCounter的count方法返回的是一个TestCounter对象,这和NSArray,NSSet等的cou...

2015-03-08 09:43:01 17696 0

转载 Introduction to the Volatile Keyword

Introduction to the Volatile Keyword The use of volatile is poorly understood by many programmers. This is not surprising, as most C texts dismiss it...

2015-03-02 11:49:00 2960 2

原创 让Xcode自动更新Build版本

我们每天都要打包给测试,每天都要改Build比较麻烦,幸运的是可以通过Shell脚本来省略这个过程。 在Xcode工程里选择对应的Target,在Build Phases里点击“New Run Script Phases”

2015-02-03 17:36:08 10980 1

原创 iOS8 用UITableViewRowAction实现Cell自定义滑动操作

在iOS 8以前,如果想自定义一个UITableViewCell的滑动操作是一件比较麻烦的事情,系统只支持删除,如果我们想加上一个类似于“置顶”的操作需要处理不少逻辑,而进入iOS 8以后,系统提供了UITableViewRowAction以及新的delegate方法,使得自定义一些操作变得非常容...

2015-01-25 21:48:44 15895 4

原创 我的2014-转行转行再转行,坚守互联网

2014年的1月1号,直到用餐的客人全部走完,关完店回到家已经是凌晨了,想想以前在北京的时候,女友让我回家带点大葱,我买成了韭菜,后来居然开了一家餐饮店,还主做采购,变化真是挺大啊。

2015-01-24 22:34:21 6856 10

原创 iOS 7、iOS 8屏幕适配

在iOS 8中,[UIScreen bounds] 、[UIScreen applicationFrame] 、Status bar、Keyboard这些frame都是根据设备真实方向来返回frame的,而在iOS 7中,不过是横屏还是竖屏,iOS总是返回竖屏的frame

2015-01-20 13:24:00 22039 1

原创 iOS 代码格式化管理

虽然在项目创建和团队组建的初期,我们就把公共约定以及一些规范定下来了,并且由于我们的代码是通过Git来做版本控制的,web上直接就支持Markdown格式的readme文件,可以随时看到最新的版本,但是这种规范只能依靠个人的意识,或者通过代码Review来解决,而且做代码Review的时候,你也不...

2015-01-19 13:47:28 14710 24

原创 去掉UIWebView底部的黑条

UIWebView底部的黑条很难看,特别是在底部还有透明控件的时候,隐藏的做法其实很简单,只需要将opaque设为NO,背景色设为clearColor即可。

2015-01-05 17:12:02 22161 0

转载 iPhone 6 / 6 Plus 设计·适配方案

from:http://www.xiaoketang.net/iphone-6-6-plus-设计·适配方案.htmltreelessing2014.10.29 关于iPhone6/6+适配问题一直有争议,今天小编专门为大家整理了相关的有效方案,希望对大伙儿有帮助! 移动app开发中多种设备尺寸适...

2014-12-30 15:25:41 10921 0

原创 DKTabPageViewController

DKTabPageViewController是一个UIViewController的子类,其基于Child ViewController管理多个页面,支持手动滚动,以及是否显示顶部的Tab等。每一个Tab对应一个UIViewController实例,与其他的Tab相互独立,View支持懒加载及v...

2014-12-12 14:47:31 4709 0

原创 DKTagCloudView

一个iOS上的标签云view,能生成随机的、不重叠的坐标,有一定的定制性

2014-11-19 10:15:56 3775 2

原创 DKCarouselView

DKCarouselView是一个自动的、无限循环滚动的View,支持按时自动滚动和暂停,通过block回调用户点击事件。

2014-11-13 23:22:55 5440 0

原创 Swift 自定义Subscript

Swift可以方便给自定义对象加下标访问:

2014-11-11 14:24:17 5097 0

原创 Framework的创建与合并

由于.a不能单独使用,必须要配合.h头文件,而且没有包含资源文件,所以用.framework就是更好的选择了。

2014-11-02 14:53:59 10511 0

原创 DKTextField

一个支持明暗码切换的TextField。 由于系统的UITextField在切换到暗码时会清除之前的输入文本,于是就有了DKTextField,DKTextField继承于UITextField,并且不影响UITextField的Delegate。

2014-10-31 12:55:13 3699 0

原创 DKImagePickerController

一个Swift实现的相片多选控件,已选择的相片会在底部预览。

2014-10-29 21:17:06 5839 4

原创 DKMessageView

一个用UICollectionView实现的滚动切换控件,每一页显示的内容可以用UICollectionViewCell自定义:

2014-10-29 21:12:39 3918 0

原创 Swift 添加方法描述(文档注释)

在Swift里为一个方法添加文档描述很简单,只需要用///就可以了,如

2014-10-08 22:12:24 12601 0

原创 使用CocoaPods过程中的几个问题

当把CocoaPods生成的workspace移动到上层目录时,需要改下Pods.xcconfig和工程里的一些设置,就通常没什么难度。 当遇到这个问题时

2014-10-01 00:16:48 66401 2

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