将modalViewController从超级视图中移除后UIView消失

将modalViewController从超级视图中移除后UIView消失

问题描述:

在我的应用程序中,我有一个tabBarController并在其中有一个navigationController。我的一个视图控制器是一个TableViewController和的导航栏下,我加入一个UIView作为一个子视图,以这样的观点:将modalViewController从超级视图中移除后UIView消失

rectangleInfo = [[UIView alloc] initWithFrame:CGRectMake(0,0,[[UIScreen mainScreen] applicationFrame].size.width,26)]; rectangleInfo.autoresizingMask = (UIViewAutoresizingFlexibleWidth); rectangleInfo.backgroundColor = [UIColor darkGrayColor]; [self.view addSubview: rectangleInfo]; 

当我点击中的tableView细胞我推的UIViewController中是这样的:

[feedViewController setModalTransitionStyle:UIModalTransitionStyleCrossDissolve]; 

[[self navigationController] presentModalViewController:feedViewController animated:YES];

当我弹出模式视图几次与它从tableViewNavigationController消失矩形信息UIView。

我弹出我的modalview这样的:

[[UIApplication sharedApplication] setStatusBarHidden:NO animated:YES]; 
[self setModalTransitionStyle:UIModalTransitionStyleCrossDissolve]; 
[self dismissModalViewControllerAnimated:YES]; 

任何想法,为什么tableViewController自败的那个子视图(rectangleInfo)后,我请从上海华模态的看法?

预先感谢您。

我通过实施正确的创建和释放我的子视图的viewDidLoad中和viewDidUnload方法解决了这个问题。

我很好奇你想用你的矩形信息视图做什么?按照它的大小,它看起来像你试图模仿状态栏。为什么?如果需要,您可以隐藏状态栏。

你可以尝试的另一件事是在Interface Builder中直观地创建UIView。不要实际将它添加到主视图中,而是将它创建为具有适当大小的XIB中的单独UIView,然后在Xcode中为它创建出口并将其连接起来。接下来,在视图控制器加载时将其作为子视图添加到代码中。看看这是否有所作为。这是特别奇怪的,因为你说它几次弹出后才会消失。你如果你把得到同样的问题,弹出的非模态的方式,例如:

[[self navigationController] pushViewController:feedViewController animated:YES]; 
[[self navigationController] popViewControllerAnimated:YES]; 
+0

你好马特,与rectangleInfo视图我不想模仿状态栏。这张照片更好地展示了我想用这个观点来做的事情http://img269.imageshack.us/img269/9001/picture1wim.png。 NavigationBar下是一个矩形信息,它上面有一个显示当前类别的UILabel。我会尝试你的建议,我会回来的反馈。谢谢 – 2009-08-04 19:08:53