【问题标题】:Update positionForBar for toolbar更新工具栏的 positionForBar
【发布时间】:2015-02-14 22:30:53
【问题描述】:

在我的应用程序中,我在顶部使用了一个工具栏,因为它可以更好地为我的需要布置条形按钮项,并且我将工具栏委托设置给视图控制器并告诉它在顶部附加。我还有一个隐藏状态栏的设置,所以发生的问题是当状态栏设置为隐藏,并且应用程序关闭然后重新打开时,调用 positionForBar 但由于没有状态栏,它对工具栏没有任何作用,所以当我在应用程序上重新打开状态栏时看起来很奇怪,工具栏向下 20px,状态栏正在显示但状态栏没有背景,所以它看起来很奇怪。 positionForBar 仍然被调用,但由于某种原因,我需要再次关闭应用程序,然后工具栏将再次绘制在状态栏后面。我发现如果我从超级视图中删除工具栏并重新添加它,它将在状态栏后面绘制,或者我可以删除 positionForBar 并让我自己的视图成为状态栏的背景,我的老问题是这个解决方案是它不会是透明的(我可能会在那里放一个 20px 的工具栏?),我删除它并重新添加视图的问题是我需要移动大量代码,因为删除它并重新添加它会使约束混乱,因此我需要完全重建整个视图,以便它在状态栏后面重绘。有没有办法只刷新视图或什么?我已经尝试过 setNeedsLayout 和 setNeedsDisplay 并且除了删除和重新添加之外,没有任何东西可以重绘

【问题讨论】:

    标签: ios objective-c iphone statusbar uitoolbar


    【解决方案1】:

    尝试手动设置 UIToolbar 的框架:

    topToolbar.frame = CGRectZero

    或者更新约束,都会导致 UIToolbar 更新它的附件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-06-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-03
      • 1970-01-01
      • 1970-01-01
      • 2016-06-03
      相关资源
      最近更新 更多