Ios 自定义Tabbar应用程序ipad隐藏Tabbar
嗨,我正在开发一个iPad应用程序。我习惯于自定义选项卡栏。还有屏幕左侧的选项卡栏按钮。我想看全屏。所以我尝试了隐藏tabbar的代码,但没有隐藏。我看到屏幕底部的灰色空间。Gary space高度为IOS 7约49像素,但IOS 6约20像素。我能做什么Ios 自定义Tabbar应用程序ipad隐藏Tabbar,ios,uitabbarcontroller,tabbar,Ios,Uitabbarcontroller,Tabbar,嗨,我正在开发一个iPad应用程序。我习惯于自定义选项卡栏。还有屏幕左侧的选项卡栏按钮。我想看全屏。所以我尝试了隐藏tabbar的代码,但没有隐藏。我看到屏幕底部的灰色空间。Gary space高度为IOS 7约49像素,但IOS 6约20像素。我能做什么 - (void)hideTabBar { for(UIView *view in self.view.subviews) { if([view isKindOfClass:[UITabBar class]])
- (void)hideTabBar
{
for(UIView *view in self.view.subviews)
{
if([view isKindOfClass:[UITabBar class]])
{
view.hidden = YES;
break;
}
}
}
在viewDidLoad中的自定义UITable视图控制器中
[self.tabBar setHidden:YES];
[self.view addSubview:self.viewButton]; // you custom buttons array view
在viewDidLoad中的自定义UITable视图控制器中
[self.tabBar setHidden:YES];
[self.view addSubview:self.viewButton]; // you custom buttons array view
你可以这样做
for(UIView *view in self.tabBarController.view.subviews)
{
if([view isKindOfClass:[UITabBar class]])
{
[view setFrame:CGRectMake(view.frame.origin.x, 1024, view.frame.size.width, view.frame.size.height)];
}
else
{
[view setFrame:CGRectMake(view.frame.origin.x, view.frame.origin.y, view.frame.size.width, 1024)];
}
}
注意:这是在ios 6和更早版本中测试的,因此如果您想在ios 7和更多版本中运行,请设置帧和一些帧标志。您可以这样做
for(UIView *view in self.tabBarController.view.subviews)
{
if([view isKindOfClass:[UITabBar class]])
{
[view setFrame:CGRectMake(view.frame.origin.x, 1024, view.frame.size.width, view.frame.size.height)];
}
else
{
[view setFrame:CGRectMake(view.frame.origin.x, view.frame.origin.y, view.frame.size.width, 1024)];
}
}
注意:这是在ios 6和更早版本中测试的,因此如果你想在ios 7和更多的设置帧和一些帧标志中运行。苹果的实现更加优雅,因为它将
UITabBarController
视图大小拉伸到足以将其tabBar
置于屏幕之外,同时,它将自动拉伸包含的视图控制器的视图
如果你只是隐藏你的标签栏,要么它下面没有内容(你的灰色空间),要么它无法识别点击
您最好子类化UITabBar
并绘制一个您喜欢的图形,但仍然让UITabBarController
为您正确地显示和隐藏它
编辑:
刚刚意识到隐藏选项卡栏不是在默认SDK中,而是在我很久以前做的一个示例中
无论如何,在我看来,拉伸UITabBarController
的视图框似乎是“隐藏”选项卡栏(实际上将其从屏幕上移开)的最优雅的方式,因为您不必处理子视图或直接搜索选项卡栏框
与问题相关。苹果的实现更为优雅,因为它将
UITabBarController
视图大小拉伸到足以将其选项卡
置于屏幕之外,同时它将自动拉伸包含的视图控制器的视图
如果你只是隐藏你的标签栏,要么它下面没有内容(你的灰色空间),要么它无法识别点击
您最好子类化UITabBar
并绘制一个您喜欢的图形,但仍然让UITabBarController
为您正确地显示和隐藏它
编辑:
刚刚意识到隐藏选项卡栏不是在默认SDK中,而是在我很久以前做的一个示例中
无论如何,在我看来,拉伸UITabBarController
的视图框似乎是“隐藏”选项卡栏(实际上将其从屏幕上移开)的最优雅的方式,因为您不必处理子视图或直接搜索选项卡栏框
与问题相关。谢谢@Viruss mca。此代码适用于IOS 6和更早版本。但不要像你说的那样使用IOS 7。我添加了屏幕截图。你能帮我一下吗?之前的答复有效。但在ios 5.0中,底部有20像素的黑色空间。如果我打开屏幕,这个黑色空间就消失了。ios 6Thank you@Viruss mca没有任何问题。此代码适用于IOS 6和更早版本。但不要像你说的那样使用IOS 7。我添加了屏幕截图。你能帮我一下吗?之前的答复有效。但在ios 5.0中,底部有20像素的黑色空间。如果我打开屏幕,这个黑色空间就消失了。ios 6没有任何问题