① 这里我用的是两个 tableView (执行操作 (代理) 方法时候根据 tag 值加以区分), 先用 StoryBoard 布局两个 tableView. 然后实现代理方法让两个栏显示各自的内容(左栏一个分区 row 显示总类, 右栏分区数是左栏 row 的数目), ② 接下来实现第一种需求: 点击左栏的 row 右栏选中对应分区的第一个 row, 点击右侧栏任一分区的 row, 左栏选中对应分区的 row, 这个在点击方法中实现起来问题不大 ③ 另外一个要求就是, 滑动右栏的时候左栏对应会选中右栏分区对应的总类 row; 解决这个问题思路就是在右栏的头视图出现和消失的时候进行判断左栏的选中哪个 row , 关键点就是我们要判断头视图出现是从下面还是上面, 也就是你滑动的方向, 一般情况下我们需要的是左栏的 row 类名, 是我们右栏最上分区的名; 那么滑动右栏下滑时候出现的区就是左栏显示的 row 名, 而上滑右栏消失的区的下一个区就是左栏显示的 row 名; 就这两个情况 ④ 上面是我做之前的思考思路, 还有些出现的问题, 我们遇到了在进行解决.