iOS回顾笔记(07) -- UITableView的使用和性能优化 如果问iOS中最重要的最常用的UI控件是什么,我觉得UITableView当之无愧!似乎所有常规APP都使用到了UITableView.下面就讲一讲UITableView的常用知识和使用原理及性能优化! 1.简介 UITableView故名思议是一种表格控件,是iOS应用中常用的表格控件.常见UITableView如图: UITableView继承于UIScrollview,因此它默认支持垂直滚动(只支持垂直滚动) UITab…
错误原因:ld: x duplicate symbol for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) 在网上查了一下: duplicate symbol的大概意思是,编译器认为你重复定义了一些东西. linker command failed with exit code 1,则可能是项目引入了多个相同的文件. 结合本人开发中发现此类的…
如果出现错误: // -[UITapGestureRecognizer superview]: unrecognized selector sent to instance 0x8e407a0 // 分析:// 方法属于谁:UIView // 结论:// 错误将UITapGestureRecognizer当做UIView来使用 那注意点下面: @implementation HMToolbar + (instancetype)toolbar{    NSArray *objs = [[NSBun…
ios7之前的版本中UIViewController中的view在显示后会自动调整为去掉导航栏的高度的,控件会自动在导航栏以下摆放. 在iOS7中UIViewController的wantsFullScreenLayout属性被舍弃了,所有的UIViewController创建后默认就是full Screen的,因此如果带导航栏的应用界面中的部分控件会被导航栏覆盖掉. 解决方案:可以使用ios7中UIViewController新增的属性extendLayoutIncludesOpaqueBar…
ViewController是iOS开发中MVC模式中的C(视图控制器),ViewController是view的controller,ViewController的职责主要包括管理内部各个view的加载显示和卸载,同时负责与其他ViewController的通信和协调. 在IOS中,有两类ViewController 一类主要用于展示内容,比如UIViewController.UITableViewController等,同时还可以自定义继承自UIViewController的ViewCont…
一.PHP的异常和错误 异常:在程序运行中不符合预期的情况及与正常流程不同的情况.一种不正常的情况,就是按照正常逻辑不该出错,但任然出错的情况,这属于逻辑和业务流程的一种中断,而不是语法错误.PHP只有主动 throw 后,才能捕获异常(一般情况下是这样,也有一些异常PHP可以自动捕获) 错误:属于自身问题,是一种非法语法或环境问题导致,让编译器无法通过检查甚至无法运行的情况.(简单说就是使脚本运行不正常的情况) 二.错误的级别 大致分为几类: 1.deprecated,最低级别的错误,表示“不…
如果整个程序界面都只是使用UITableView来搭建,一般需要如下步骤: (1)向界面上拖一个UITableView (2)设置数据源 (3)设置代理 (4)遵守代理协议  上述过程相对繁琐,为了简化操作,直接使用UITableViewController,但要一定要注意:需要和主控制器类进行关联,还有就是不要把UIViewController当成UITableViewController使用.   自定义TableViewCell(在ATDemoCell.m里): + (instancety…
在上周associated objects一文中,我们开始探索Objective-C运行时的一些黑魔法.本周我们继续前行,来讨论可能是最受争议的运行时技术:method swizzling.   Method swizzling指的是改变一个已存在的选择器对应的实现的过程,它依赖于Objectvie-C中方法的调用能够在运行时进改变——通过改变类的调度表(dispatch table)中选择器到最终函数间的映射关系.   举个例子,假设我们想跟踪在一个iOS应用中每个视图控制器展现给用户的次数:…
  阅读器 iOS开发iOS   本文由TracyYih[博客]翻译自NSHipster的文章Method Swizzling.   在上周associated objects一文中,我们开始探索Objective-C运行时的一些黑魔法.本周我们继续前行,来讨论可能是最受争议的运行时技术:method swizzling.   Method swizzling指的是改变一个已存在的选择器对应的实现的过程,它依赖于Objectvie-C中方法的调用能够在运行时进改变——通过改变类的调度表(disp…