如何让我的表视图控制器可滚动,以便用户可以从屏幕底部向上滑动?

时间:2016-09-21 19:55:01

标签: ios swift uitableview uiscrollview storyboard

我正在编写一个Swift应用程序,目前我已打开故事板,我有一个UIViewController,其中有两个元素:UIImageViewTableViewController,一个位于另一个之下:

enter image description here

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

enter image description here

然后他就可以向下滚动桌子了。

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

你能帮助我并告诉我如何做到这一点,以便当用户向上滑动表格视图时 - 首先它将整个组件向上移动,然后在其中滚动表格?

我的灵感来自潜望镜应用程序,当您观看视频时,第一个屏幕看起来像这样:

enter image description here

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

enter image description here

2 个答案:

答案 0 :(得分:1)

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

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

答案 1 :(得分:0)

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

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

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

请确保您始终根据子视图制作各种Y值 - 不要假定绝对值,否则当您更改屏幕尺寸时它会变得不稳定。