摘要:
首先,什么是block:block其实就是一个代码块,把你想要执行的代码封装在这个代码块里,等到需要的时候再去调用。那block是OC对象吗?答案是肯定的 做一道很简单的关于block的测试题。: 这道题是我公司面试题中的一道,来面试的都是至少两年工作经验的,但是很郁闷,这道题绝大多数人写的都是6。 阅读全文
摘要:
手势解锁这个功能其实已经用的越来越少了。但是郁闷不知道我公司为什么每次做一个app都要把手势解锁加上。。。。。于是就自己研究了一下手势解锁页面的实现。。 要想实现这个页面,先说说需要掌握哪些: UIPanGestureRecognizer的基本使用 CGRectContainsPoint(<#CGR 阅读全文
摘要:
xcode7添加启动图片步骤:在target中将Launch Screen File置为空,不使用自带的LaunchScreen.storyboard作为启动图(LaunchScreen.storyboard这个文件已经可以删除了,没有什么用)在Assets.xcassets中添加Launch Im... 阅读全文
摘要:
在Swift语法的if语句中,是不能出现这种情况的:1 let optionName = "Swift"2 if let name = optionName {3 print("ok")4 }但是可以出现下面这种:let optionName: String? = "Swift"if let... 阅读全文
摘要:
前几天在苹果官方文档学习iOS9 3D Touch的时候,发现苹果关于3D Touch的smaple code,竟然是用Swift语法写的,并且根本没有OC版本的。看来学习Swift语法是势在必行了。学习Swift语法 有开发基础的,最好的方法就是直接去看苹果官方文档:https://develop... 阅读全文
摘要:
首先,NS_ENUM和NS_OPTIONS都是宏。 Foundation框架中定义了一些辅助的宏,用这些宏来定义枚举类型时,也可以指定用于保存枚举值的底层数据类型。这些宏具有向后兼容能力,如果目标平台的编译器支持新标准,那就使用新式语法,否则改用旧式语法。这些宏是用#define预处理指令来... 阅读全文
摘要:
在平时的iOS开发中,我们经常用到的数据持久化存储方式大概主要有:NSUserDefaults(plist),文件,数据库,归档。。前三种比较经常用到,第四种归档我个人感觉用的还是比较少的,恰恰因为用的比较少,但是还是有地方要用到,所以今天再把归档解档复习一遍吧。一、什么是归档: 对象归档是将对象... 阅读全文
摘要:
NSAssert()只是一个宏,用于开发阶段调试程序中的Bug,通过为NSAssert()传递条件表达式来断定是否属于Bug,满足条件返回真值,程序继续运行,如果返回假值,则抛出异常,并切可以自定义异常描述。NSAssert()是这样定义的:#define NSAssert(condition, ... 阅读全文
摘要:
附上我的demo源码:https://github.com/wqhiOS/WUParallaxView先来看下效果:利于AutoLayout可以很简单的完成这个视觉间差效果,这里默认大家的都已经掌握了AutoLayout。第一步 首先把基本工作完成 新建一个项目 如下:并在viewControlle... 阅读全文
摘要:
很多工作一段时间的iOS程序员,总是每天沉浸在代码里,大家总是按照xcode的规定生成项目,然后就开始码代码了,但是大家知道app背后的启动过程吗?当点击程序图标启动程序开始到退出,程序在运行过程中到底执行了哪些代码?只有理解了这个才能游刃有余的掌握iPhone程序的开发。 程序启动的完整过程... 阅读全文