From 5a20c5136c5f5cad7dab1539c73b287583a076d8 Mon Sep 17 00:00:00 2001 From: LeeJay Date: Tue, 20 Jun 2017 17:08:12 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E9=83=A8=E5=88=86=20bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Linkage/CollectionView/CollectionViewController.swift | 6 +++--- Linkage/TableView/TableViewController.swift | 10 +++++++--- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/Linkage/CollectionView/CollectionViewController.swift b/Linkage/CollectionView/CollectionViewController.swift index 1e2859c..f26b44d 100644 --- a/Linkage/CollectionView/CollectionViewController.swift +++ b/Linkage/CollectionView/CollectionViewController.swift @@ -60,7 +60,7 @@ class CollectionViewController: UIViewController, UITableViewDelegate, UITableVi view.addSubview(tableView) view.addSubview(collectionView) - tableView.selectRow(at: IndexPath(row: 0, section: 0), animated: true, scrollPosition: .top) + tableView.selectRow(at: IndexPath(row: 0, section: 0), animated: true, scrollPosition: .none) } } @@ -179,7 +179,7 @@ extension CollectionViewController { // CollectionView 分区标题即将展示 func collectionView(_ collectionView: UICollectionView, willDisplaySupplementaryView view: UICollectionReusableView, forElementKind elementKind: String, at indexPath: IndexPath) { // 当前 CollectionView 滚动的方向向上,CollectionView 是用户拖拽而产生滚动的(主要是判断 CollectionView 是用户拖拽而滚动的,还是点击 TableView 而滚动的) - if !isScrollDown && collectionView.isDragging { + if !isScrollDown && (collectionView.isDragging || collectionView.isDecelerating) { selectRow(index: indexPath.section) } } @@ -187,7 +187,7 @@ extension CollectionViewController { // CollectionView 分区标题展示结束 func collectionView(_ collectionView: UICollectionView, didEndDisplayingSupplementaryView view: UICollectionReusableView, forElementOfKind elementKind: String, at indexPath: IndexPath) { // 当前 CollectionView 滚动的方向向下,CollectionView 是用户拖拽而产生滚动的(主要是判断 CollectionView 是用户拖拽而滚动的,还是点击 TableView 而滚动的) - if isScrollDown && collectionView.isDragging { + if isScrollDown && (collectionView.isDragging || collectionView.isDecelerating) { selectRow(index: indexPath.section + 1) } } diff --git a/Linkage/TableView/TableViewController.swift b/Linkage/TableView/TableViewController.swift index afaeba9..31d9c2d 100644 --- a/Linkage/TableView/TableViewController.swift +++ b/Linkage/TableView/TableViewController.swift @@ -50,7 +50,7 @@ class TableViewController: UIViewController, UITableViewDataSource, UITableViewD view.addSubview(leftTableView) view.addSubview(rightTableView) - leftTableView.selectRow(at: IndexPath(row: 0, section: 0), animated: true, scrollPosition: .top) + leftTableView.selectRow(at: IndexPath(row: 0, section: 0), animated: true, scrollPosition: .none) } } @@ -140,7 +140,9 @@ extension TableViewController { // TableView 分区标题即将展示 func tableView(_ tableView: UITableView, willDisplayHeaderView view: UIView, forSection section: Int) { // 当前的 tableView 是 RightTableView,RightTableView 滚动的方向向上,RightTableView 是用户拖拽而产生滚动的((主要判断 RightTableView 用户拖拽而滚动的,还是点击 LeftTableView 而滚动的) - if (rightTableView == tableView) && !isScrollDown && rightTableView.isDragging { + if (rightTableView == tableView) + && !isScrollDown + && (rightTableView.isDragging || rightTableView.isDecelerating) { selectRow(index: section) } } @@ -148,7 +150,9 @@ extension TableViewController { // TableView分区标题展示结束 func tableView(_ tableView: UITableView, didEndDisplayingHeaderView view: UIView, forSection section: Int) { // 当前的 tableView 是 RightTableView,RightTableView 滚动的方向向下,RightTableView 是用户拖拽而产生滚动的((主要判断 RightTableView 用户拖拽而滚动的,还是点击 LeftTableView 而滚动的) - if (rightTableView == tableView) && isScrollDown && rightTableView.isDragging { + if (rightTableView == tableView) + && isScrollDown + && (rightTableView.isDragging || rightTableView.isDecelerating) { selectRow(index: section + 1) } }