【问题标题】:Scroll bars with a translucent navigation bar带有半透明导航栏的滚动条
【发布时间】:2013-07-24 20:36:23
【问题描述】:

如果你在UIViewController 上将setTranslucent 转换为YES,它会将内容“向上”移动(我想它真正在做的是将它向下移动 em>)。

由于我的所有内容都在UIScrollView 中,因此导航栏有效地覆盖了此滚动视图的顶部。我可以将滚动视图中的项目往下一点,但滚动指示器仍然部分隐藏在导航栏下方。

我会考虑将整个滚动条向下移动 44 点,除非这在 iPhone 上横向显示不正确。

一个普通的 UITableView 似乎可以很好地处理这种情况 - 我如何在我的 UIViewController 中做同样的事情?

编辑

我意识到我应该将 contentInsets 和 scrollIndicatorInsets 设置为“向下移动”。但我的问题仍然存在 - 在横向模式下,导航栏和滚动视图之间有一个难看的差距。

【问题讨论】:

  • 对于值得记录的 Photos.app 示例没有显示问题 - 插图在每次旋转中似乎都不同。
  • 那是因为导航栏对于每个方向都有不同的高度。
  • 我需要更好地表达我的问题 - 是的,这就是我想要解决的问题。我不能创建使用“无论 nag bar 高度是什么”的插图,我不认为?苹果文档使用平面 44,这是行不通的。
  • 收听导航栏上的旋转通知并将高度复制到插图中。
  • 这就是我所担心的。我听说这种方法可以解决许多极端情况(例如,当应用程序在后台时设备会旋转)。

标签: ios cocoa-touch uiscrollview uinavigationbar


【解决方案1】:

我花了 2 分钟在谷歌上搜索了这个答案:contentInset

查看此问题以获得解释:https://stackoverflow.com/a/10049782/2462469

之后你还需要调整ScrollIndicatorInsets

http://developer.apple.com/library/ios/ipad/#documentation/UIKit/Reference/UIScrollView_Class/Reference/UIScrollView.html%23//apple_ref/occ/instp/UIScrollView/scrollIndicatorInsets

编辑:这个家伙有类似的轮换问题:https://stackoverflow.com/a/15623727/2462469 他需要在旋转回来后重新设置滚动位置。不过,这是一个边缘案例。

【讨论】:

  • 我刚刚同时发表了评论 - 我找到了一些文档,但它们对我的中心问题没有帮助。
  • 检查我在 scrollIndicatorInset 上的添加
  • 仍然没有帮助。我猜两分钟还不够?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-08-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多