• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ios - UIScrollView 的内容在导航栏下方有偏移

[复制链接]
菜鸟教程小白 发表于 2022-12-12 16:23:25 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我有一个 UIScrollView,它包含一个 UIView,它又包含一个 UIImageView 和几个 UIButton。 我遇到的问题是图像显示在导航栏下方约 20 像素处。

似乎有类似问题的人有解决方法,比如设置

self.automaticallyAdjustsScrollViewInsets = NO;

或者只是隐藏状态栏

- (BOOL)prefersStatusBarHidden {
    return YES;
}

但是,这两种解决方案都不适合我。第一个将内容设置得太高,而是在底部添加 20px 空间。第二个隐藏了状态栏,但偏移量仍然存在。

problem

因为我有很多来自 this tutorial by Ray Wenderlich 的代码而且我不知道我的代码到底在哪里,this is the link to code on github .

谁能帮帮我?



Best Answer-推荐答案


我能够弄清楚发生了什么。感谢您发布指向您的应用的链接。

问题在于以下代码:

if (contentsFrame.size.height < boundsSize.height) {
    contentsFrame.origin.y = (boundsSize.height - contentsFrame.size.height) / 2.0f;
} else {
    contentsFrame.origin.y = 0.0f;
}

事实证明,本地图首次显示时,contentsFrame.size.height 实际上小于 bounds.Size.height。因此,您的代码将图像垂直居中。这就是为什么您会在顶部看到偏移量。准确地说是 17.279 像素。

我一直在玩你的应用程序(顺便说一句,这看起来很有趣),我相信你可以完全摆脱对 centerScrollViewContents 的两次调用,它会像你预期的那样工作。

如果您还有其他问题,请告诉我。

希望这会有所帮助!

关于ios - UIScrollView 的内容在导航栏下方有偏移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19965827/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap