各种效果原理(抽屉,多个tableView复用)
2016-07-22 13:15
225 查看
1.抽屉效果原理
添加3个UIView1,2,3到控制器上并记录属性。添加当前view3的手势,实现手势方法(不能使用view3.transform,用frame根据偏移量计算view3的frame)
根据拖动时的偏移量来判断view2,view3谁隐藏
根据手势的几个状态来设置抽屉效果并计算view3的frame(UIGestureRecongnizerStateEnded【手指松开】)
添加点按手势复位(设置frame)
注意:当一个控制器的View添加到另一个控制器的View上,那么他的控制器也要成为另一个控制器的字控制器。
2.多个tableView的复用
方法一,用UICollectionView中(默认上下滚动,使用layout.scrollDirection = UICOllectionViewDirectionHorizontal左右滚动)自定义cell(添加tableView),利用系统的缓存池自动缓存。在UIscollectionView添加3个tableView,(根据缓存池原理)最前面1号消逝后拿到最后面
3.在一个控制器分离多个UITableView的数据源和委托
在numberOfRowsInSecrion中加一个判断拿到的tableView不同区分不同的行在cellForRowAtIndexPath中加一个判断拿到不同的tableView不同区分不同的代理方法
例如两个UItableView有联系时根据tableView代理拿到第几个Cell,在发送数据给服务器,刷新另一个tableView的数据
设置contentInset,设置AFN__weaktypeof(self) weakSelf,
注意:awakeFromNib 当从storyboard或xib中创建就会调用一次,cell中系统自带一个setSelected方法用来监听点击和取消点击
注意:bottonLayout Guide(tabBar)约束时会有短暂时间存在,别设置错了注意:数据量太大时不要用NSInteger存id(会导致数组越界),用字符串
相关文章推荐
- [HDU 5738] Eureka (计数)
- HDU 5745 La Vie en rose(简单模拟)
- 1、TwoSum
- Java判断一段话中是否有电话号码 (未测试)
- Sql Server根据表名生成查询的存储过程(查询条件可选)
- 1
- C++常见问题: 字符串分割函数 split
- Python:其他知识点
- Javascript计时器的实现(未测试)
- JavaScript取得字符串的长度(中文,日文)
- ShareSDK单独调用
- Tobject 类解析
- Nodejs使用mailer发送邮件(未测试)
- spring mvc 的jpa JpaRepository数据层 访问方式汇总
- Nodejs获取网络数据并生成Excel表格(未测试0
- SQL UNION 操作符 UNION 操作符用于合并两个或多个 SELECT 语句的结果集
- MSVC 6.0 的 inline, _inline, __inline
- 剑指offer——约瑟夫环问题
- 如何通过无线网络真机调试android应用
- MYSQL的随机查询的实现方法 (未测试)