我还很新,我正在制作一个基本的多视图应用程序,其中的按钮可以打开新视图。
编辑:当我制作一个新的,更简单的应用程序时,我遇到了同样的问题,我认为这与删除子视图有关。我使用另一个UIViewController
制作了该应用程序的另一个简单版本:MainViewController
和SecondViewController
。 MainView
具有工具栏和红色背景,SecondView
具有浅蓝色背景。工具栏上的按钮使用以下代码删除了所有子视图(我认为这是问题所在),然后将SecondView
添加为子视图。
for(UIView *view in self.view.subviews){
[view removeFromSuperview];
}
运行时,会发生类似的混合问题(请参阅下文)。没有此代码,子视图将正确显示。发生了什么事,有什么办法让我删除所有子视图而不触发它?我的目标是要有几个按钮,每个按钮都会打开一个新视图(并关闭所有其他视图)。
原始帖子:
从应用程序委托中,我将根
UIViewController
appViewController
附加到appView
笔尖。该视图仅是黄色背景,因此不打算显示。在appViewController
中,我在加载时添加了一个RootViewController
子视图,该子视图控制着带有红色背景和几个编号按钮的UIView
。两个视图均已写入-(BOOL) shouldAutorotateToInterfaceOrientation
,仅接受横向。但是,当我运行该应用程序时,而不是看到带有按钮的RootView的红色背景,屏幕的上半部分是红色,而下半部分则是带有按钮的黄色,好像两个
UIViews
混合在一起了。此外,按钮不起作用,甚至不显示蓝色按钮按下的图形效果。发生了什么?编辑:根据要求:
RootViewController
的源代码以下是在appViewController
中:- (void)viewDidLoad {
rootViewController = [[RootViewController alloc] initWithNibName:@"RootView" bundle:nil];
[self.view addSubview:rootViewController.view];
self.rootViewController.appViewController = self;
}
最佳答案
在黑暗中拍摄,但也许:
[自配置]
关于iphone - 清除 subview 时 View 困惑,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6837619/