Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 空白代替隐藏的选项卡栏_Ios_Uinavigationcontroller_Uitabbarcontroller_Uinavigationbar_Uitabbar - Fatal编程技术网

Ios 空白代替隐藏的选项卡栏

Ios 空白代替隐藏的选项卡栏,ios,uinavigationcontroller,uitabbarcontroller,uinavigationbar,uitabbar,Ios,Uinavigationcontroller,Uitabbarcontroller,Uinavigationbar,Uitabbar,我在UINavigationController内部使用uitabarcontroller,导航控制器中的一个屏幕是UIImageView。当我想全屏显示该图像时,我必须隐藏导航栏和选项卡栏。我能够正确地隐藏导航栏,但当我隐藏选项卡栏时,它会留下50像素的空白。有什么建议吗?您可以增加图像视图框的高度。我想您可以在模型视图控制器上显示它。 将modelviewcontroller置于tabbarcontroller之上 FullImageView*objFullImageView = [[Ful

我在
UINavigationController
内部使用
uitabarcontroller
,导航控制器中的一个屏幕是
UIImageView
。当我想全屏显示该图像时,我必须隐藏导航栏和选项卡栏。我能够正确地隐藏导航栏,但当我隐藏选项卡栏时,它会留下50像素的空白。有什么建议吗?

您可以增加图像视图框的高度。

我想您可以在模型视图控制器上显示它。 将modelviewcontroller置于tabbarcontroller之上

FullImageView*objFullImageView = [[FullImageView alloc] initWithNibName:@"FullImageView" bundle:nil];
objFullImageView.image = OriginalImage;
UINavigationController *tempNav = [[[UINavigationController alloc] initWithRootViewController:objFullImageView] autorelease];
[objFullImageView release];
self.tabBarCtrl.modalPresentationStyle = UIModalPresentationPageSheet;
[self.tabBarCtrl presentModalViewController:tempNav animated:YES];
FullImageView.h

{  
    UIImage *image;
}
@property(nonatomic, retain) UIImage *image;
FullImageView.m

@synthesize image;

viewDidLoad /ViewWillApper
{
    //Set image in your UIImageView    
}

经过数小时的研究,此线程解决了我隐藏选项卡栏时出现的空白问题:

谢谢大家 我找到了解决我问题的最好办法

MyImageViewController.hidesBottomBarWhenPushed = YES ;
[self.navigationController pushViewController:MyImageViewController animated:YES];
它给了我想要的回应。
谢谢你的分享

从最初的帖子开始已经有很长时间了,但我想我可以跳进去补充我的想法


另一个选项是直接在故事板中为所有在tabbar控制器内的导航控制器内推送的控制器设置选项
在推送时隐藏底部栏。这在3.5英寸和4英寸的iOS7模拟器/目标中也可以使用。

我通过更改约束解决了这个问题


我在选项卡栏viewController中有一个视图,其底部约束是从Safe Area.bootom中给定的(=0)。这导致底部出现空白。将此约束从Superview.bottom更改为(=0)解决了我的问题

自包含的示例有助于了解正在发生的事情。试着编辑你的问题。谢谢。由于iOS 8,所有的“will-rotation函数”都不推荐使用。[1][1]:我已经做了,但没有做任何事情。问题仍然存在。您必须创建一个新类。然后创建该类的对象并将该对象显示为modelviewcontroller。我已经编辑了我的答案。而且你不需要隐藏你的导航控制器和tabbar。