包含多个并排表格视图时,Scrollview scrollsToTop 不起作用?反复搜索过

Posted

技术标签:

【中文标题】包含多个并排表格视图时,Scrollview scrollsToTop 不起作用?反复搜索过【英文标题】:Scrollview scrollsToTop doesn't work when containing multiple side by side tableviews? Have searched repeatedly 【发布时间】:2015-01-27 15:35:18 【问题描述】:

我查看了这个帖子并尝试了我看到的所有内容,但似乎无法正常工作。

Scroll to top of UITableView by tapping status bar

我有一个 UINavigationController 和一个 UITabBarController。应用程序首先打开一个 UICollectionView。

当用户进行选择时,它会弹出一个由自定义 UIViewController(“ScrollViewController”)运行的 ScrollView。 ScrollViewController 制作了四个 TableViewControllers 并将它们的 TableViews 并排放置在启用分页的 ScrollView 中,并且还有一个浮动 UIPageControl。

点击顶部栏会将 CollectionView 滚动到顶部,但是一旦我调出 ScrollView,我就无法从任何地方向上滚动。我已经尝试将所有 TableViews 的 scrollsToTop 设置为 NO,没有变化。

有什么建议吗?

【问题讨论】:

【参考方案1】:

没错。您只能通过点击状态栏来控制一个滚动视图。如果您在屏幕上有多个滚动视图(隐藏或可见),您可以通过使用scrollsToTop = NO 禁用所有其他滚动视图的自动滚动,将其中一个设置为由状态栏点击控制,其中包括任何在其中使用滚动视图,如表格视图或寻呼机。

self.myTableView.scrollsToTop = NO;

根据苹果的文档:

在 iPhone 上,如果屏幕上有多个滚动视图将 scrollsToTop 设置为 YES,则滚动到顶部手势无效。

【讨论】:

对,但这是我的问题...我已经将所有四个 TableView 的 scrollsToTop 设置为 NO,并将包含它们的 ScrollView 设置为 YES,但它并没有解决问题。 UIPageControl 上有 scrollsToTop 吗?我没找到。 UIScrollView 在 UICollectionView、UITableView 和 UITextView 中使用。如果您有任何渲染,即使在屏幕外或隐藏它也会导致问题。就我而言,我在 MMDrawerController(开源)中使用 UITableView 来创建抽屉菜单。抽屉控制器内的表格视图导致了问题,即使它不在屏幕上。

以上是关于包含多个并排表格视图时,Scrollview scrollsToTop 不起作用?反复搜索过的主要内容,如果未能解决你的问题,请参考以下文章

我想在 trailingSwipeActionsConfigurationForRowAt 中并排添加图像和文本,并在表格视图中快速滑动时引导滑动动作

如何在表格视图 IOS 内的滚动视图中创建文本字段

Swift 中一个垂直 ScrollView 中的多个水平 ScrollView?

ScrollView 自动布局内的 TableViews

当 UITableView 开始滚动时,动画视图

scrollView 中scrollView 的水平滚动 - 小问题