自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 iOS 图片裁剪,旋转角度,微调角度 LEGOImageCropper

实现与效果微调角度90°角旋转改变宽高比例旋转和微调过程中适应边框填充边界源码微调角度- (void)beginTrackingWithTouch {    // 开始微调角度}- (void)continueTrackingWithTouch:(CGFloat)value changeValue:(CGFloat)changeValue {...

2019-12-19 09:45:25 554

原创 游戏引擎篇(一)-苹果2D引擎SpriteKit

最近研究了苹果自家开发的2D引擎SpriteKit和3D引擎SceneKit,开篇之前,需要客观的讲,如果你要从事的是团队或者公司的项目,还是直接unity搞起,这涉及到开发与维护成本的问题,毕竟SpriteKit目前无法对跨平台给予支持。但是如果你是一个独立开发者,对苹果原生框架感兴趣,或者只关注与苹果的App Store,我想SpriteKit和SceneKit也是个不错的选择。Sprite译作

2017-11-13 17:49:19 1164

原创 AutoLayout之关于苹果原生约束的探索

AutoLayout(自动布局),在我们的项目中,我更喜欢把它称为约束。iOS实现约束有几种方式:原生约束api、VFL、IB、第三方约束工具(Masonry、UIView+AutoLayout),这里花一点篇幅来讲述苹果原生的约束。github:https://github.com/yangqingren/LBAutoLayoutNSLayoutConstraint 我们先来阅读以下官方注释:

2017-09-07 15:39:21 472

原创 QRVideoRecord 视频录制

视频捕获逻辑?• 摄像头和麦克风授权• 建立Session会话• 添加Input• 添加Output• 正式开始视频捕捉• 视频结果的处理摄像头和麦克风授权访问相机和麦克风需要获得用户授权,授权状态包括用户未授权、用户想要授权却没权限(家长控制)、用户已授权、用户拒绝授权。1、用户未授权:只要创建一个AVCaptureDeviceInput对象时,系统会自动弹出原生对话框请...

2018-11-23 18:16:21 516

原创 App间的数据的发送和接收服务(一)

拟这个题目很久了,在公司项目中有时会涉及到文件的相关处理,但又因iOS的沙盒机制(sandbox)而感到畏首畏尾,写这篇博客意在打破苹果对文件的一些限制,当然是用的是正规的手段。先来回顾一下iOS的沙盒机制:每个应用程序都有自己的存储空间。每个应用程序都不可以翻过自己的围墙去访问别的存储空间的内容。(已经越狱的除外)在访问别人沙盒内的数据时需要访问权限。本篇我们将以UTI的方式

2018-02-02 11:31:35 1095

原创 对iOS的代码与架构的思考--协议篇

一、关于协议的思考协议,就是一个方法列表,它声明了可以被任意类实现的方法。换句话来说,就是所有的对象,只要遵循了该协议,则拥有了这个方法列表的方法的声明即对外的接口。注:在iOS当中,协议经常与代理委托结合使用,但是,这两者之间不要混为一谈。使用协议,可以给大家提供一种编写组件的思路,能让我们对项目的耦合性加深认识,先举一个例子./** 定义一套协议列表 */@pro...

2017-11-20 16:45:04 405

原创 iOS解耦与模块化 -路由的构建使用

上一篇中介绍了项目解耦中的构建Spec私有库,这篇记录一下本次模块化之路的另一个重要环节,构建路由。路由,可以理解为一个模块的调度中心。我们写项目时,经常有业务模块与业务模块、业务模块与功能模块之间的相互调用,如果在使用的时候直接引用,做模块间的随意跳转,这样会产生很多耦合与依赖,而我们构建路由的目的,就是要去掉这些耦合,做到模块间互不依赖,不相影响。先看看目前项目的路由构建:下面...

2017-10-18 15:11:55 1132

原创 iOS解耦与模块化 -制作自己的Spec私有库

最近公司项目进入趋于稳定的状态,需要做项目解耦与模块化的工作,听说app还将要拆分为6个app,慌不择路。以这篇文章为起始,记录一下这次项目的模块化之路的重要环节。首先看一下我们项目私有库目前制作与完成情况:下面开始动手制作属于自己的私有库:一、配置文件podspecpodspec文件相当于私有库的配置文档,下面先进行podspec的相关讲解 执行命令pod spec crate [项目名] ,可

2017-09-22 18:15:52 887 1

原创 Masonry的约束布局,scrollView与cell的自动适配

公司项目使用Masonry已经很久了,上一篇中介绍了约束的原生api和Masonry的一些基础用法,还对Label等控件的自带宽高问题进行了说明。今天我写一篇实用的关于scrollView的约束布局与cell的自动适配用法。gitHub:https://github.com/yangqingren/LBMasonry.git我们在使用约束布局的时候,子view通常可以决定自己的size,父...

2017-09-08 14:48:42 412

空空如也

空空如也

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

TA关注的人

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