关闭

[置顶] 如何设计一个 iOS 控件?(iOS 控件完全解析)

> 代码的等级:可编译、可运行、可测试、可读、可维护、可复用 --- # 前言 一个控件从外在特征来说,主要是封装这几点: > * 交互方式 * 显示样式 * 数据使用 对外在特征的封装,能让我们在多种环境下达到 PM 对产品的要求,并且提到代码复用率,使维护工作保持在一个相对较小的范围内;而一个好的控件除了有对外一致的体验之外,还有其内在特征: > * 灵活性 * 低耦合 * 易拓展 * 易维护...
阅读(30095) 评论(29)

[置顶] Swift 绘图板功能完善以及终极优化

转载请注明出处:http://blog.csdn.net/zhangao0086/article/details/45289475。 前文总结接着这篇:Swift 全功能的绘图板开发,虽然在上一篇中我们已经完成了这些功能: 支持铅笔绘图(画点) 支持画直线 支持一些简单的图形(矩形、圆形等) 做一个真正的橡皮擦 能设置画笔的粗细 能设置画笔的颜色 能设置背景色或者背景图 但是还有一个非常重要的功能没...
阅读(5628) 评论(4)

[置顶] Swift 全功能的绘图板开发

转载请注明出处:http://blog.csdn.net/zhangao0086/article/details/43836789。 要做一个全功能的绘图板,至少要支持以下这些功能: 支持铅笔绘图(画点) 支持画直线 支持一些简单的图形(矩形、圆形等) 做一个真正的橡皮擦 能设置画笔的粗细 能设置画笔的颜色和填充颜色 能设置背景色或者背景图 … 我们先做一些基础性的工作,比如创建工程。 工程搭建...
阅读(14476) 评论(25)

[置顶] iOS8 Core Image In Swift:视频实时滤镜

Core Image是一个很强大的框架。它可以让你简单地应用各种滤镜来处理图像,比如修改鲜艳程度, 色泽, 或者曝光。 它利用GPU(或者CPU)来非常快速、甚至实时地处理图像数据和视频的帧。并且隐藏了底层图形处理的所有细节,通过提供的API就能简单的使用了,无须关心OpenGL或者OpenGL ES是如何充分利用GPU的能力的,也不需要你知道GCD在其中发挥了怎样的作用,Core Image处理了全部的细节。本文将会使用AVFoundation框架做些全局或局部的实时滤镜效果,并支持单张照片的拍摄或录制视...
阅读(25816) 评论(25)

[置顶] iOS8 Core Image In Swift:人脸检测以及马赛克

Core Image是一个很强大的框架。它可以让你简单地应用各种滤镜来处理图像,比如修改鲜艳程度, 色泽, 或者曝光。 它利用GPU(或者CPU)来非常快速、甚至实时地处理图像数据和视频的帧。并且隐藏了底层图形处理的所有细节,通过提供的API就能简单的使用了,无须关心OpenGL或者OpenGL ES是如何充分利用GPU的能力的,也不需要你知道GCD在其中发挥了怎样的作用,Core Image处理了全部的细节。本文将会提到人脸检测以及简单的马赛克处理。...
阅读(18595) 评论(15)

[置顶] iOS8 Core Image In Swift:更复杂的滤镜

Core Image是一个很强大的框架。它可以让你简单地应用各种滤镜来处理图像,比如修改鲜艳程度, 色泽, 或者曝光。 它利用GPU(或者CPU)来非常快速、甚至实时地处理图像数据和视频的帧。并且隐藏了底层图形处理的所有细节,通过提供的API就能简单的使用了,无须关心OpenGL或者OpenGL ES是如何充分利用GPU的能力的,也不需要你知道GCD在其中发挥了怎样的作用,Core Image处理了全部的细节。本文将会提到更复杂的滤镜以及子类化CIFilter的使用。...
阅读(21900) 评论(14)

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

Core Image是一个很强大的框架。它可以让你简单地应用各种滤镜来处理图像,比如修改鲜艳程度, 色泽, 或者曝光。 它利用GPU(或者CPU)来非常快速、甚至实时地处理图像数据和视频的帧。并且隐藏了底层图形处理的所有细节,通过提供的API就能简单的使用了,无须关心OpenGL或者OpenGL ES是如何充分利用GPU的能力的,也不需要你知道GCD在其中发挥了怎样的作用,Core Image处理了全部的细节。 本文将会提到自动改善图像以及内置滤镜的使用。...
阅读(20078) 评论(3)

[置顶] Xcode及模拟器SDK下载

Xcode及模拟器SDK下载,安装SDK就等于安装了模拟器,如果你嫌Xcode下载SDK太慢的话,可以选择手动安装...
阅读(135098) 评论(153)

[置顶] iOS 自定义页面的切换动画与交互动画 By Swift

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

[置顶] iOS 实现脉冲雷达以及动态增减元素 By Swift

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

用 Houston 在本地调试远程通知

Houston 的背景Houston 在 GitHub 上的地址:https://github.com/nomad/Houston,作者又是Mattt Thompson,简直是惨无人道啊,又高产,又有质量Houston 能让我们在本地、甚至终端很方便的调试远程通知。安装首先在终端安装:$ gem install houston我第一次安装的时候报了错,但是第二次就安装成功了:... Installi...
阅读(3232) 评论(1)

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

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

聊聊 iOS 开发

做开发到一定程度后就会面临“转职”,是转向更深的技术还是工程管理值得考虑啊。。 行业现状虽然近几年有大量的开发者涌入移动端,社会上的各种培训机构也越来越多,但是优秀的 iOS 开发者在行业内仍然很少,这一方面是由于创业者很多,另一方面是因为技术更新换代很快,而且开发也需要长时间的经验积累,以近几年的 WWDC 大会为例,11年发布的 iOS5 与 iOS4 相比简直就是跨越性的更新,虽然用户可能感...
阅读(6147) 评论(20)

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

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

《Head First 设计模式》整理

对《Head First 设计模式》中的常用设计模式的整理,其实很多模式我们在开发中都有用到,但是在此之前没有一种理论基础支撑自己,有了这些知识后,更有利于做好程序的设计工作,以及遇到一些设计问题时知道如何取舍。策略模式作用通过组合不同的算法,为系统提供运行时动态地改变行为的功能,使系统具有更大的弹性。定义定义了算法族,把它们分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客...
阅读(2902) 评论(0)

TestFlight Beta 备忘

用iTunes Connect提供的TestFlight功能可以确保我们在设备上测试的版本和App Store上将要发行的版本是同一个。 TestFlight仅支持iOS 8及后续版本,并且需要从App Store里安装TestFlight app。 分为内部测试和外部测试两种: 内部测试 每个应用最多25位测试者,需要把测试者的Apple ID添加到开发者账号里,苹果为会测试者创建一个iT...
阅读(2963) 评论(0)

Swift Core Data 图片存储与读取Demo

实体的模型定义: 实体的class定义:@objc(ImageEntity) class ImageEntity: NSManagedObject { @NSManaged var imageData: NSData }存储:@IBAction func saveImageToCoreData() { let delegate = UIApplication.sharedAppli...
阅读(8557) 评论(0)

Swift Nullability and Objective-C

通过Bridging-Header文件,Swift可以与Objective-C无缝调用,但是Swift与Objective-C有一个很大的不同点:Swift支持Optional类型。比如NSView和NSView?,在Objective-C里对此只有一种表示,即NSView *,既可以用来表示该View为nil、也能表示为非nil,此时Swift编译器是无法确定这个NSView是不是Optional类型的...
阅读(6059) 评论(4)

FMDB 在多线程中的使用

在App中保持一个FMDatabaseQueue的实例,并在所有的线程中都只使用这一个实例。[FMDatabaseQueue databaseQueueWithPath:path]FMDatabaseQueue虽然看似一个队列,实际上它本身并不是,它通过内部创建一个Serial的dispatch_queue_t来处理通过inDatabase和inTransaction传入的Blocks...
阅读(19639) 评论(6)

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

对还没有支持Xcode 6.2的插件有效,Alcatraz 的新版已经支持。 进入到插件目录 ~/Library/Application Support/Developer/Shared/Xcode/Plugins 显示插件的包内容 编辑Info.plist文件 展开DVTPlugInCompatibilityUUIDs 添加一个新的item:A16FF353-8441-459E-A50C-B071...
阅读(19170) 评论(20)

iOS Core Data的returnsObjectsAsFaults属性

这个属性是用来做优化的,但是有时候反而会降低性能,我跟你打个简单的比方,假如你有一个Department对象,它和Employee对象是一对多的关系(比如一个部门有100个员工),当你加载Department的时候,它包含的所有Employee也被加载了,此时如果returnsObjectsAsFaults为YES,则员工们不会被添加到内存中。...
阅读(4550) 评论(0)

iOS id类型的方法调用

用id类型调用了count方法,此时编译器会遍历所有的可见头的count方法,编译器当然会找到多个定义,因为count方法在NSArray,NSSet等等这些类上也有实现,而且我的TestCounter的count方法返回的是一个TestCounter对象,这和NSArray,NSSet等的count方法返回NSUInteger类型不一样,所以编译器会给你一个异常。...
阅读(12912) 评论(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 in a sentence or two....
阅读(2771) 评论(2)

让Xcode自动更新Build版本

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

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

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

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

2014年的1月1号,直到用餐的客人全部走完,关完店回到家已经是凌晨了,想想以前在北京的时候,女友让我回家带点大葱,我买成了韭菜,后来居然开了一家餐饮店,还主做采购,变化真是挺大啊。...
阅读(5796) 评论(10)
130条 共7页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:1688803次
    • 积分:13443
    • 等级:
    • 排名:第993名
    • 原创:120篇
    • 转载:7篇
    • 译文:3篇
    • 评论:550条
    关于本博客

    如果有任何问题欢迎随时与我沟通联系
    Email:zhangao0086@gmail.com
    或是CSDN私信


    传送门:CSDN iOS 论坛,如果有什么问题,我会尽力解答,还望共同学习


    如需转载,请注明出处,谢谢!


    我的GitHub
    欢迎Star、欢迎PR

    我的Stackoverflow

    博客专栏
    最新评论