2

为什么这不起作用:

- (void)viewDidLoad {
Login *neu =[[Login alloc] initWithNibName:nil bundle:nil];
    [self presentModalViewController:neu animated:NO];
}

但这有效

-(IBAction)dologin:(id)sender{
Login *neu =[[Login alloc] initWithNibName:nil bundle:nil];
    [self presentModalViewController:neu animated:NO];
}

我想在加载一个指定的类时直接加载,...

4

2 回答 2

1

我认为如果你[self presentModalViewController:neu animated:NO];搬到viewDidAppear:

这样,模式视图控制器将在视图出现时立即弹出。

于 2010-01-17T21:02:46.423 回答
0

viewDidLoad:不是您要放置模态视图的地方。它可能会在内存不足警告卸载视图控制器后调用,然后当用户导航回它时,它会意外地尝试显示模态视图。如果您想在应用程序启动时呈现某些内容,请applicationDidFinishLaunching:在您的应用程序委托中执行此操作,或者设置一个 NSNotfication 观察者:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(applicationDidFinishLaunching:) name:UIApplicationDidFinishLaunchingNotification object:nil];

并打电话给presentModalViewController:那里。

于 2010-01-16T11:09:52.940 回答