Snapchat 就像不同视图控制器上的按钮

Snapchat like buttons over different view controllers

3 个主要的 snapchat 按钮位于屏幕底部,但当您在不同的视图控制器之间滑动和移动时,它们会保持在相同的位置。不仅如此,它们还会根据您所在的视图缩小和增大。

我正在尝试做类似的事情。我的 vc 顶部有一个按钮,当我切换到另一个按钮时,我希望它留在那儿并且仍然可以使用。

解决此问题的一种可能方法是使用 UIPageViewController 并将其设置为在适当的索引处显示所需的 UIViewControllers。在对 UIPageViewController 进行子类化之后,您必须以编程方式添加按钮。

或者:

您还可以对全屏大小的单元格使用 UICollectionView,并在 UICollectionViewCell.contentView 内的适当索引处添加所需的 UIViewController.view。在 UICollectionView 顶部添加按钮,并根据 scrollView contentOffset

通过增加或减少约束来为按钮设置动画

对于复杂的动画,您可以通过在视图控制器之间创建自定义转换来实现。需要注意的重要一点是,在转换逻辑中,您必须以按钮替换不可见的方式为控制器设置动画。当第一个控制器按钮消失后,第二个控制器按钮就会消失。

我为此所做的是一个带有视图控制器的滚动视图。 youtube 上有教程只需搜索 snapchat 滚动或 snapchat 菜单系统或 w/e。然后我把按钮放在滚动视图上,这样当你滑动到每个视图控制器时按钮保持静止。我还制作了一个滑块,但它变得非常复杂。当我前后导航时,我的滑块也会消失,因此需要进行大量调整。