gpt4 book ai didi

ios - 如何复制 Chrome 应用程序的地址栏行为

转载 作者:行者123 更新时间:2023-12-01 16:47:16 25 4
gpt4 key购买 nike

有人知道是否有一些项目或东西可以复制 iOS 中 chrome 应用程序的地址栏行为吗?也就是说,向下滚动时,它会隐藏,如果我在表格中间,并且向上滚动,地址栏就会出现。

谢谢!

最佳答案

大多数导航隐藏的工作方式是通过监听滚动/表格/ WebView 中的滚动事件并调整导航栏的中心。

您可以让您的 View Controller 成为相关 View 的代表并应用某种级别的逻辑:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
CGFloat scrollOffset = scrollView.contentOffset.y;
CGPoint navigationBarCenter = self.navigationController.navigationBar.center;

// A bunch of calculations
navigationBarCenter.y = newlyCalculatedPosition;

self.navigationController.navigationBar.center = navigationBarCenter;
}

对于这种特定行为,他们从滚动开始的位置计算并说“如果我向下滚动,导航栏中心应该是其原始中心减去滚动距离。如果我向上滚动,导航栏中心应该增加从刚刚离开屏幕到正常位置。

然后,您必须决定在滚动结束并且导航栏部分显示在屏幕上时要做什么。你是全部展示还是部分展示?

在 iOS7 之前,您还必须担心 ScrollView 的框架。 iOS7 默认行为是让 View Controller 扩展到设备的全尺寸,而 iOS6 默认行为是填充导航栏和工具栏之间的空间。您可以通过使用半透明导航栏来解决此问题,但需要调整您的内容和滚动指示器插图,以在不滚动时将内容限制在内部区域。

关于ios - 如何复制 Chrome 应用程序的地址栏行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18991230/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com