如何将 UIView 锚定到屏幕上的特定位置并在滚动时将其保留在那里

Posted

技术标签:

【中文标题】如何将 UIView 锚定到屏幕上的特定位置并在滚动时将其保留在那里【英文标题】:How to anchor a UIView to a specific place on Screen and keep it there even while scrolling 【发布时间】:2016-12-16 14:11:51 【问题描述】:

我在 Swift for ios 中创建了一个 Snackbar 样式的消息。我需要了解将 Snackbar 作为子视图添加到哪个视图。 问题之一的示例:我有一个包含很多内容的滚动视图。当您按下 UIScrollView 内某处的按钮时,我希望消息从屏幕底部弹出,即使用户继续滚动 UIScrollView,它也会停留在屏幕底部。如何确定滚动视图上方的哪个视图以便我将小吃栏作为子视图添加到它?

【问题讨论】:

self.view .bringSubviewToFront(yourview) 【参考方案1】:

将其添加到 View Controller 的内容视图中,并将视图置于顶部。

【讨论】:

【参考方案2】:

您需要创建一个 单独的 视图,该视图将在您填充它之前一直隐藏,它会漂浮在滚动视图上。它需要脱离滚动视图的上下文,以便它不会与所有其余内容一起移动。你仍然可以滚动,所以这应该可以解决问题。

【讨论】:

以上是关于如何将 UIView 锚定到屏幕上的特定位置并在滚动时将其保留在那里的主要内容,如果未能解决你的问题,请参考以下文章

导航栏可以锚定到特定位置吗?

Unity UI:你能同时锚定到一个特定的点,并在各个方向上伸展吗?

如何将 UIAlertController 操作表锚定到特定单元格 UICollectionView?

锚定到 div 以转到 div 上方的某个点以允许固定标题 [重复]

我如何将 url 路由到 laravel 中的特定控制器并锚定到特定控制器

将项目锚定到屏幕中心并带有一些偏移