DHTalk's Blog

Stay hungry Stay foolish.

由技术发展所引发的个人思考

毋庸置疑,目前互联网上讨论最火的技术当属人工智能了,而作为一个技术从业者,虽然对人工智能技术的了解甚少,但最近读了一些技术相关的书籍以及观看了一些视频后,自我感觉技术对人类社会的发展影响深远。 # 技术在改变着人类的社会发展对这句话的深刻思考源于前几天看过的一个纪录片《美国商业大亨传奇 The Men Who Built America》 (2012)......

Xcode9 + iOS11 实现真机无数据线调试

在 WWDC 2017 后,Xcode 支持真机无线调试了,不过现在 Xcode9 和 iOS11 目前都没有发布正式版本,想要体验的话必须安装 Xcode9 和 iOS11 的 beta 版。下面演示一下怎么样来设置真机无线调试。 1.首先确保安装 iOS11 的 iPhone 或者 iPad 连接到 电脑上。 2.在 Xcode 菜单栏选择 Wi......

iOS 开发之 Block

关于 Block在 iOS4.0之 后,block 横空出世,它本身封装了一段代码并将这段代码当做变量,通过 block() 的方式进行回调。这不免让我们想到在C函数中,我们可以定义一个指向函数的指针并且调用: bool executeSomeTask(void) { //do something and return if succe......

iOS 内存管理

什么是自动引用计数(ARC) 在 Objective-C 中采用 Automatic Reference Counting (ARC) 机制,让编译器来进行内存管理。在新一代 Apple LLVM 编译器中设置ARC为有效状态,就无需再次键入retain或者release代码,这在降低程序崩溃、内存泄漏等风险的问时,很大程度上减少了开发程序的工作量。编......

Swift CoreAnimation:CATransition 转场动画

CATransition 同 CoreAnimation 核心动画中 CABasicAnimation 等相关类的使用方法类似。主要分为三个步骤: (1)实例化 CATransition,并设置相应的转场动画 key。(2)设置合适的转场动画属性,比如动画时间、过渡方向、动画保持状态等。(3)将动画效果添加到对应视图的 Layer 图层中。 CATr......

iOS 开发之 Widget 的实现

添加 Today Extension 工程在原有的项目基础上,想要使用 Today Extension,即 Widget。我们需要创建一个新的 target,点击File-->New-->Target-->Today Extention,如下图所示: 创建成功后如图所示: 此时直接运行项目,如下图所示: Widget UI ......

Swift Animation 3D动画

锚点的基本概念要想实现一些复杂的 3D 动画,首先要先搞清楚锚点的概念。AnchorPoint 是一个 CGPoint 类型的值,该值指定了一个基于 bounds 的坐标系位置。也就是说锚点指定了 bounds 相对于 position 的值,同时也是变化时候的中心点。 一般情况下,锚点的默认值是(0.5,0.5),取值范围为0~1之间。当锚点值为(0......

Swift Animation 内容层动画(四)

CAShapeLayer 打造动态图表CAShapeLayer 追本溯源CAShapeLayer 是 QuartzCore 框架下非常重要的一个类,利用它可以实现各种图形的绘制类动画效果。 CAShapeLayer 是 iOS 框架下的核心动画部分,Shape 为形状的意思,描述了当前动画的特点,可以实现各类形状的绘制。 Layer 表明当前动画并非直......

Swift Animation 内容层动画(三)

CAEmitterCell 粒子动画在 iOS 系统中,粒子系统有2部分组成:CAEmitterLayer 和 CAEmitterCell。 (1)CAEmitterLayer 为粒子发射图层。该图层主要用于控制粒子展现范围、粒子发射位置、粒子发射形状、渲染模式等属性。通过 CAEmitterCell 构建的发射单元都受到 CAEmitterLaye......

Swift Animation 登录按钮动画

登录按钮的水纹动画当点击登录按钮时,会以点击点为圆心形成水纹扩散。扩散形状为圆形,扩散颜色为粉色,在扩散过程中按钮的状态为不可点击。 水纹动画拆解为以下5个功能模块 UIButton 坐标获取 Draw 圆形绘制 定时器刷新 其他模块 调用模块 创建基于 UIButton 的 MyButton 类 坐标获取func startButtonAnim......