11 2016 档案
字典转模型深层次理解
摘要:在控制台输出plist文件中的key(属性) 前提:plist中最外层为字典,但是只能获取到第一层的key属性(即模型中的属性),第二层获取不了) 注意:以后直接在项目中导入NSDictionary+PropertyCode.h好.m文件即可.用的时候直接输入ViewController.h中的这些
阅读全文
iOS的生命周期
摘要:iOS应用程序一般都是由自己编写的代码和系统框架组成。系统框架提供了一些基本的infrastructure给APP来运行,而开发者则自己编写代码定制APP的外观和行为,了解iOS infrastructure及其如何工作对编写APP很有帮助。 Main函数入口 所有基于C编写的APP的入口都是mai
阅读全文
【iOS开发】在 App 中加入 AdMob 广告 - 入门介绍与编程技巧
摘要:前言 虽然在App中加入广告来盈利是比较低级的商业化方式,但对于个人开发者或者小团队开发者来说,做出一个简单易用的免费小工具(举个栗子),在里面加入一些广告,如果用的人多,也是可以带来一些可观的收入的。用户没有掏钱,得到了方便,开发者也得到了回报:) 我个人出于对金钱的考虑和对Google的信任,选
阅读全文
iOS性能优化:Instruments
摘要:检测内存泄露:Instruments中的Leaks 前言 如果要检测内存泄露,我们会使用Xcode7自带的Instruments中的Leaks工具来检测. 现在的开发环境是ARC,所以很少会出现内存泄漏的情况. 不过我们一定要养好码代码的规范性. 例如:使用通知,别忘了移除; 使用presentVi
阅读全文
动态的计算行高 加载数据源 有多少显示多少 tableView 包含 colloctionView 显示复杂的界面写法
摘要:有时候,我们经常碰到这样的需求 先遵守代理 @interface PublishCollectionCell ()<UICollectionViewDataSource, UICollectionViewDelegate, UICollectionViewDelegateFlowLayout> 创建
阅读全文
UICollectionViewDelegateFlowLayout 使用
摘要:import UIKit //UICollectionViewLayout //itemSize属性 //设定全局的Cell尺寸,如果想要单独定义某个Cell的尺寸,可以使用下面方法: // - (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collecti...
阅读全文
iOS中Block的基础用法
摘要:本章不会对Block做过多的实现研究。只是讲解基本的用法。纯粹基础知识。结合实际项目怎么去做举例。Block使用场景,可以在两个界面的传值,也可以对代码封装作为参数的传递等。用过GCD就知道Block的精妙之处。 Block是一种比较特殊的数据类型。它可以保存一段代码,在合适的时候取出来调用。 AR
阅读全文
IOS调试lldb命令常用,po,
摘要:lldb命令常用(备忘) 假如你准备在模拟器里面运行这个,你可以在“(lldb)”提示的后面输入下面的: LLDB在xcode4.3或者之后的版本里面是默认的调试器。假如你正在使用老一点版本的xcode的话,你又GDB调试器。他们有一些基本的相同的命令,因此假如你的xcode使用的是“(gdb)”提
阅读全文
@weakify, @strongify ObjC的Block中使用weakSelf/strongSelf @weakify/@strongify
摘要:首先要说说什么时候使用weakSelf和strongSelf。 下面引用一篇博客《到底什么时候才需要在ObjC的Block中使用weakSelf/strongSelf》的内容: Objective C 的 Block 是一个很实用的语法,特别是与GCD结合使用,可以很方便地实现并发、异步任务。但是,
阅读全文
__block 与 __weak的区别理解
摘要:Blocks理解: Blocks可以访问局部变量,但是不能修改 如果修改局部变量,需要加__block 2、如果局部变量是数组或者指针的时候只复制这个指针,两个指针指向同一个地址,block只修改指针上的内容。如: 例子里面确实没有修改mArrayCount这个局部变量啊。mArrayCount是一
阅读全文