1
我的应用包含3个视图。我定义的AppDelegate
3种辅助方法,每个视图之间切换(让每个视图可以调用其他的),它看起来像这样:切换视图时未正确绘制视图
-(IBAction)goToView1 {
if (view1 == nil)
{
View1 *thisView = [[View1 alloc] initWithNibName:@"View1" bundle:nil];
view1 = thisView;
}
for (UIView *view in window.subviews)
[view removeFromSuperview];
[window addSubview:view1.view];
}
如果用户想切换到另一种观点,我绑一个按钮,一个IBAction
在视图的控制器定义:
-(IBAction)goToOtherView:(id)sender {
ViewSwitcherAppDelegate *root = [[UIApplication sharedApplication] delegate];
[root goToView1];
}
这一切都为切换视图工作正常,但在图绘时,它是显示不正确,就像它是忽略了状态栏:
我在做什么错?
它在应用程序启动时呈现正常,所以我怀疑在将子视图添加到窗口的方式中存在问题。
在此先感谢!
您是否设置了视图的框架属性?如果是这样,你能告诉我们代码吗? – diederikh 2009-06-28 08:37:56
不是我所知道的。视图是使用默认值创建的。 下面是一个展示相同行为的示例项目(使用SDK 3.0): http://files.getdropbox.com/u/361159/ViewSwitcher.zip – 2009-06-28 09:37:06