【问题标题】:how can I make my table view controller scrollable, so the user can swipe it up from the bottom of the screen?如何使我的表格视图控制器可滚动,以便用户可以从屏幕底部向上滑动它?
【发布时间】:2017-01-30 05:31:14
【问题描述】:

我正在编写一个Swift 应用程序,目前我打开了情节提要,我有一个UIViewController,其中包含两个元素:UIImageViewTableViewController,一个位于另一个之下:

如您所见,表格视图控制器没有覆盖图像并且是半可见的。 我想应用我的约束,以便当用户向上滑动它时 - 表格视图控制器会覆盖照片的一部分:

然后他就可以将表格进一步向下滚动。

表格本身是由单元格动态填充的,因此有时它有 10 个单元格,有时更少。

你能帮我告诉我该怎么做,以便当用户向上滑动表格视图时 - 首先向上移动整个组件,然后在其中滚动表格?

我的灵感是潜望镜应用,当你观看视频时,第一个屏幕是这样的:

但是当你向上滑动白色组件时 - 它覆盖了 80% 的屏幕,用户可以滚动里面的内容:

【问题讨论】:

  • 尝试添加tableView.isScrollEnabled = true

标签: ios swift uitableview uiscrollview storyboard


【解决方案1】:

此链接 [https://medium.com/@dineshk1389/pull-down-table-views-e33d4c85018b#.c9havwadt] 可能有用。

它提供了您正在寻找的几乎相同的功能。

【讨论】:

    【解决方案2】:

    所以我认为你需要在这里做两件不同的事情。

    第一个是启用表格视图中的滚动,如上面 Rashwan 所述。这将处理项目数大于表格的情况,即使它“滚动到视图中”也是如此。但是,您可能希望在桌子“向下”时将其关闭。我的问题是当屏幕上只有一小部分表格时滚动会是什么样子。你只需要尝试一下

    第二部分只是上下移动桌子。在视图中添加UISwipeGestureRecognizer 来执行此操作,here 是一个教程。不要费心调整表格或任何东西的大小,只需更改它的 Y 值,它应该就可以工作了。我在我的应用程序中执行此类操作,其中视图处于屏幕外或隐藏状态,然后将其移动到显示屏中并再次关闭,而不是打开/关闭。

    确保您始终设置相对于您的子视图的各种 Y 值 - 不要假设绝对值,否则当您更改屏幕尺寸时它会变得不稳定。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多