後存在我添加的firstView在AppDelegate中:的UIView繼續removeFromSuperview
#import "TestViewAppDelegate.h"
#import "MainViewController.h"
@implementation TestViewAppDelegate
@synthesize window;
@synthesize mainViewController;
- (void)applicationDidFinishLaunching:(UIApplication *)application {
MainViewController *aController = [[MainViewController alloc] initWithNibName:@"MainView" bundle:nil];
self.mainViewController = aController;
[aController release];
self.mainViewController.view.frame = [UIScreen mainScreen].applicationFrame;
[window makeKeyAndVisible];
[window addSubview:mainViewController.view];
}
- (void)dealloc {
[mainViewController release];
[window release];
[super dealloc];
}
然後我想切換到secondView:
#import "MainViewController.h"
#import "SecondViewController.h"
@implementation MainViewController
@synthesize mainViewController, secondViewController;
- (IBAction)viewSwitch
{
SecondViewController *second = [[SecondViewController alloc] initWithNibName:@"SecondView" bundle:nil];
self.secondViewController = second;
[second release];
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.75];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:self.view cache:YES];
[mainViewController.view removeFromSuperview];
[self.view addSubview:secondViewController.view];
[UIView commitAnimations];
}
- (void)dealloc {
[mainViewController release];
[secondViewController release];
[super dealloc];
}
@end
然後同樣的事情從secondView切換到firstView ...
問題是,當我切換視圖,我認爲釋放總是可見的,不會消失。
感謝您的回覆。 我也會嘗試這種方式,但需要更多的幫助。如果我將視圖控制器添加到IB的窗口中,是否還需要在MainWindow.xib中添加一個視圖,該視圖將成爲頂層視圖? – Rufilix
最後我遵循了這個方法。 – Rufilix
你有沒有找到你的問題的答案?這給出了一個不同的方法,但似乎並沒有直接回答什麼是不工作的。我試圖找出一個類似於你的問題。 – Jacob