二级tableView联动

来源:互联网 发布:ios横版动作游戏 知乎 编辑:程序博客网 时间:2024/05/29 04:05

我这里说的联动的意思就是操作AtableView 让BtableView滚动到相应的位置,操作BtableView让AtableView滚动到相应的位置.

先给个参考图看一下好说.

111372768-addf4655b48178f9

首先介绍一下这个结构.
首先左边的tableView是一个控制 leftViewController
右边的是一个控制器rightViewController
右边控制器rightViewController的rightTableView加到了左边 控制器的View上了(用到了addChildViewController)

在左边的控制器创建右边控制器 这就拿到了 右边控制器的 引用 在右边控制器中写个 方法 点击左边 用右边的 引用直接调用 方法移动 就好了

移动右边 让左边移动,在右控制器边同样的拿到左边的 引用吧 ,用代理…..

还是看代码吧
ViewController不重要只是加一个导航
ViewController.h

ViewController.m

leftViewController.h

leftViewController.m

rightViewController.h

rightViewController.m

这篇是我看例子http://www.jianshu.com/p/c118a29887ca

由于有点小问题就是 (慢慢拖着拖着不放)滑动右边 左边的联动有时不会出现

首先考虑一个问题
当我们 操作左边tableView的时候 让右边动.
我们动右边的时候 让左边动.
比如说 我操作左边 右边动了 (右边一动左边是不是受到影响呢?)

分析一下我们 想要的结果是
我操作左边 让右边东(这个时候不想让左边受影响)
我拖动右边时才让左边受影响.
那么我们只需 判断出 右边的动 是我操作左边他才动的 还是我直接拖动右边才动的.

所有的解释都在 代码注释里.

效果图如图

121372768-a19ed4987b4f5588

 

131372768-206da02b491f550c

0 0
原创粉丝点击