我没有使用标签栏或任何其他控件——我基本上想动态地将当前视图更改为不同的视图控制器(即通过代码)。我根本没有使用界面生成器...
例如,假设我们创建了三个视图控制器:
(这可能不是最好的例子,但我试图让它简单化)
View_Hello.m(和 .h)
View_Goodbye.m(和 .h)
View_Ciao.m(和 .h)
我们的 ViewerAppDelegate 将启动 View01_Hello。
View_Hello 将有一个自定义的触摸方法,如果滑动则需要转到 View_Ciao,但如果只是触摸则需要转到 View_Goodbye。
关于我如何做到这一点的任何想法(请不要说“哦,您需要在此示例中使用 xxx 界面元素”。我需要能够在应用程序的视图中基于程序控制随机更改视图正在努力)
过去一周我一直在浏览 Google 和 StackOverflow,并浏览了我的三本 O'Reilly Cocoa 书籍(外加三本 iPhone 开发人员书籍),所有这些都只是使用简单的界面——但没有像我这样的例子正在尝试做。
===========
编辑(@Andrew Grant):
例如:
View_Ciao *viewCiao;
-(void) viewDidLoad {
viewCiao = [[View_Ciao alloc] initWithNibName:@"View_Ciao" bundle:nil];
[viewCiao.view setNeedsDisplay];
[super viewDidLoad];
}
这崩溃了。:-)
==============
编辑(@丹尼尔迪克森)
太棒了——成功了!
- (void)applicationDidFinishLaunching:(UIApplication *)application {
[window addSubview:viewController.view];
[window makeKeyAndVisible];
// create the second view, remove the first, and then display the second
viewCiao = [[ViewCiao alloc] init];
[viewController.view removeFromSuperview];
[window addSubview:viewCiao.view];
}