一直眼红Swipes这个App做的真是舒服, 读了大牛们关于自定义cell的框架发现都执着于给cell加button, 不能哧溜哧溜地往左滑, 就寻思着做一个顺滑的cell。断断续续写了两天眼看就要写完了, 然而往左滑的动画却一直是不如人意的 :(
想了想是不是左滑的时候系统的Delete按钮在作祟, 于是
在tableView:cellForRowAtIndexPath:
方法里加入
#ifdef DEBUG
NSLog(@"===cell===", [cell performSelector:@selector(recursiveDescription)]);
#endif
在tableView:commitEditingStyle:forRowAtIndexPath:
方法里加入
#ifdef DEBUG
NSLog(@"===tableview===", [[tableView cellForRowAtIndexPath:indexPath] performSelector:@selector(recursiveDescription)]);
#endif
-
recursiveDescription
这是一个私有方法, 用来打印任意的视图结构, 并按视图层次排列, 它会递归地做这件事, 对每个子视图, 再去找它们的子视图(比用Reveal查看视图结构更完整)。 - Release是发行版本,不包含任何调试信息, Debug是调试版本,Debug和Release调用两个不同的底层库。 在大工程里调试时把
NSLog()
夹在#ifdef DEBUG
和#endif
中间,NSLog()
只有在调试时才会被编译, 省去很多麻烦。
控制台输出cell所有子视图
控制台输出tableView所有子视图
一共输出了六个视图:
其中UITableViewCellDeleteConfirmationView
是ActionButton
(删除按钮)放置的位置, 宽高和Button一样。这是我要找的view! :)
不过......没开canEditRowAtIndexPath:
方法是不会有这个view的。
嗯一个cell就是这样的干干净净
附顺滑的cell框架:https://github.com/7937/AJSlideCell.git
网友评论