侧滑界面的小实验
解决思路
在keyWindow上实现
在tabBarController上实现
解决方法
其他
简单说,这段时间开发的时候有个业务需要用侧滑菜单来实现。博主当时的第一反应是上网找轮子直接使用,然而,事情总是出乎意料的。使用网上的开源轮子之后,我在点击tabBarController的切换控制器时,却意外的crash了。
什么鬼!待博主看完源码,发现找到的轮子几乎都是将我们当前要显示的主界面view以及侧边栏的view加到轮子的view上,然后设置轮子为rootViewController进行管理。因此,当博主将tabBarController作为侧滑功能的mainController的时候,虽然自己...
Click to read more ...
0
views
CALayer的探究应用
进度条
常规做法
自定义layer
扩展
先上本文讲述的demo效果图
这几天博主在看kitten yang的A GUIDE TO IOS ANIMATION,作者对动画的使用令我感触很深(同为同龄人实在感到惭愧),于是决定重新学习一次layer。
coreAnimation作为iOS最重要的框架之一,CALayer的重要性毋庸置疑,本文将从上图的demo讲起,我会分成常规用法跟自己思考实现的用法来实现,以此来更加深入的学习layer。
ps:本文不包括CALayer的属性讲解以及使用。如有需要,请自行百度学习
进度条
常规做法
如上图所示,进度条并不是单纯的线性增长,在50%之前,每一次进度增加,进...
Click to read more ...
0
views
创建个人博客详细过程
准备工作
创建github博客
域名绑定
更新博客
其他资源:
最近自己瞎搞了一个个人博客,个人觉得还不错,决定把制作博客的过程写下来,帮助想要构建自己博客的朋友们。
准备工作
首先,我们需要在github上面创建一个账号。如果你还没有github账号,那么可以在首页进行快速注册
填写完成确定信息没有重复的情况下,点击下面的Sign up for Github按钮,然后跳转到新界面。新界面用来选择是否进行付费购买github的仓库加密服务,如果你希望托管在github上面的项目不是开源的,那么选择付费很有必要。
这里默认选择了free免费,我们滑动到网页下面选择绿色按钮就可以注册成功了。注册完成后进行界面内,我们可以通过右下角的New按钮进行邮箱认证...
Click to read more ...
0
views
探索scrollView的实现
图层渲染
contentOffset
contentSize
contentInset
UIScrollView滚动视图,绝对算的上是iOS开发中最重要的控件,用来展示多于一个屏幕的内容,可以滚动显示超过屏幕外的内容的特性使其产生了更多强大的子类:UITableView、UICollectionView、UITextView等等。尽管功能如此强大,但是scrollView本质上只是一个UIView的黑魔法,本文将剖析UIScrollView这种强大特性的实现过程
图层渲染
这里不得不提到UIView和CALayer的关系。在UIKit框架中,UIView是所有界面元素的基础,我们页面上可见的控件几乎都是从这个类派生出来的。之所以说几乎意味着我们也可以不通过UI...
Click to read more ...
0
views
二维码扫码和应用跳转
扫描相关类
应用跳转
二维码扫描
读取二维码信息进行应用跳转
扫描优化
应用传值
前面我们已经调到过怎么制作二维码,在我们能够生成二维码之后,如何对二维码进行扫描呢?
在iOS7之前,大部分应用中使用的二维码扫描是第三方的扫描框架,例如ZXing或者ZBar。使用时集成麻烦,出错也不方便调试。在iOS7之后,苹果自身提供了二维码的扫描功能,从效率上来说,原生的二维码远高于这些第三方框架。本文讲解如何使用原生框架实现二维码扫描功能,并且进行扫描后的项目跳转。
扫描相关类
二维码扫描需要获取摄像头并读取照片信息,因此我们需要导入系统的AVFoundation框架,创建视频会话。我们需要用到一下几个类:
AVCaptureSession 会话对象。...
Click to read more ...
0
views
定制多样式二维码
二维码生成
二维码拓展
二维码/条形码是按照某种特定的几何图形按一定规律在平台(一维/二维方向上)分布的黑白相间的图形纪录符号信息。使用若干个与二进制对应的几何形体来表示文字数值信息。
最常见的二维码功能包括信息获取、网站跳转、电商交易、手机支付等等,其拥有密度小、信息容量大、容错能力强、成本低、制作难度低等优点。在移动开发中,二维码的地位也越来越重要,掌握二维码的基本操作是重要的本领之一。
在iOS7之后,苹果自身集成了二维码的生成和读取功能。生成二维码包括以下步骤
导入CoreImage/CoreImage.h头文件
使用CIFilter滤镜类生成二维码
对生成的二维码进行加工,使其更清晰
除了...
Click to read more ...
0
views
正则表达式
表达式字符解析
语法/字符说明表
代码实操
正则表达式是一种用来进行文本匹配的工具,其语法优美简洁。在开发中,查找、对比以及匹配字符串是家常便饭的业务,通过正则表达式我们将这些业务描述成某些需求规则,来让我们的代码更美观、实用。例如我们要验证用户输入的密码长度是否满足6~18位的长度,新手最常见的验证方式是判断输入的密码长度
return (textField.text.length >= 6 && textField.text.leng <= 18);
尽管这种判断方式没有任何问题,而上面的验证换做正则表达式的匹配字符就显得短小精悍
^.{6,18}$
还有,大部分的固定电话都是0区号-八位数字的格式,那么正则表达式的匹配如下...
Click to read more ...
0
views