使自定义工具栏显示在所有选项卡(如Spotify app-iOS)的选项卡栏上

使自定义工具栏显示在所有选项卡(如Spotify app-iOS)的选项卡栏上,ios,uinavigationcontroller,uitabbarcontroller,uitabbar,uitoolbar,Ios,Uinavigationcontroller,Uitabbarcontroller,Uitabbar,Uitoolbar,我想在所有选项卡的选项卡栏上方显示一个工具栏(或者可能只是一个视图),就像Spotify应用程序一样。理想情况下,所有选项卡都可以访问相同的工具栏/视图,因此如果它在一个位置更改,我不必为每个选项卡都更改它。另一件事是每个选项卡都有自己的导航控制器,因此这会导致一个问题,因为每个导航控制器通常都有自己的工具栏。也许可以在选项卡栏视图控制器中添加一些东西,以便在其上方添加视图?我在这个话题上没有太多发现,所以我不知道该怎么办,有什么想法吗?它应该是这样的(注意底部的选项卡栏和工具栏/视图): (

我想在所有选项卡的选项卡栏上方显示一个工具栏(或者可能只是一个视图),就像Spotify应用程序一样。理想情况下,所有选项卡都可以访问相同的工具栏/视图,因此如果它在一个位置更改,我不必为每个选项卡都更改它。另一件事是每个选项卡都有自己的导航控制器,因此这会导致一个问题,因为每个导航控制器通常都有自己的工具栏。也许可以在选项卡栏视图控制器中添加一些东西,以便在其上方添加视图?我在这个话题上没有太多发现,所以我不知道该怎么办,有什么想法吗?它应该是这样的(注意底部的选项卡栏和工具栏/视图):


(来源:)


谢谢

我在将其设置为UIToolbar时遇到了太多的问题,而是创建了一个自定义视图(通过称为StatusView的XIB),并将其作为子视图添加到UITabBarController视图中,在自定义UITabBarController子类中使用以下代码:

NSArray *arr = [[NSBundle mainBundle] loadNibNamed:@"StatusView" owner:self options:nil];
self.statusView = [arr objectAtIndex:0];
self.statusView.frame = CGRectMake(0, screenHeight - (TabBarHeight + StatusBarHeight), screenWidth, StatusBarHeight);
[self.view addSubview:self.statusView];

这不考虑
StatusView
的偏移量。
-[UITabBarController selectedViewController]
将扩展到
选项卡bar.frame.origin.y
,从而使您的内容隐藏在自定义视图下方。