iOS 7 UITableView使用透明导航栏和工具栏

时间:2013-09-24 20:10:55

标签: uitableview uinavigationbar ios7 uitoolbar

就像Facebook / Venmo应用程序一样,如何设置UITableView,以便内容在半透明导航栏和底部工具栏下滚动,但您仍然可以滚动到顶部和底部,而不会被导航或工具栏遮挡?

谢谢!

1 个答案:

答案 0 :(得分:6)

我假设您要构建iOS7应用程序。

通常,当您使用新SDK构建时,这会自动完成。

例如,您使用Autolayouts设置了UITableViewUIScrollView(扩展到视图控制器视图的完整高度)。

UIViewControllers在iOS 7中有一个名为edgesForExtendedLayout的新属性。此处的默认值为UIRectEdgeAll,表示控制器将其内容扩展到所有边缘。如果您的视图控制器嵌套在UINavigationControllerUITabBarController中,则它会自动设置内容插入内容,因此您可以滚动到顶部和底部并查看所有项目(或单元格或其他内容)。 然后当您在屏幕外滚动内容时,您可以看到条形图的新iOS7模糊效果。

请注意,要将其他UI元素放置在导航栏下方以便它们保持可见并且不与栏重叠,您应该阅读topLayoutGuidebottomLayoutGuide的文档。来自文档:

“[...]表示您不希望在半透明或透明UIKit栏后面显示的内容的最高垂直范围(例如状态或导航栏)。[...]”

TopLayoutGuide

BottomLayoutGuide