为什么我的iOS应用程序在尝试presentModalViewController时崩溃了?

时间:2010-12-28 09:29:48

标签: ios presentmodalviewcontroller

我整天都在反对这一事,这似乎很简单,但我无法理解。

我有一个使用XCode中的“基于视图的应用程序”模板创建的iOS应用程序。这基本上就是我的代码:

AppDelegate.h:

#import <UIKit/UIKit.h>
@interface AppDelegate : NSObject <UIApplicationDelegate> {
    UIWindow *window;
    MainViewController *viewController;
}
@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) IBOutlet MainViewController *viewController;
@end

AppDelegate.m:

#import "AppDelegate.h"
#import "MainViewController.h"
@implementation AppDelegate
@synthesize window, viewController;
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    
    [self.window addSubview:viewController.view];
    [self.window makeKeyAndVisible];
    return YES;
}
- (void)dealloc {
    [viewController release];
    [window release];
    [super dealloc];
}
@end

MainViewController.h:

#import <UIKit/UIKit.h>
@interface MainViewController : UIViewController {
}
-(IBAction) button:(id)sender;
@end

MainViewController.m:

#import "MainViewController.h"
#import "ModalViewController.h"
@implementation MainViewController
...
-(IBAction) button:(id)sender {
    ModalViewController *mvc = [[[ModalViewController alloc] initWithNibName:NSStringFromClass([ModalViewController class]) bundle:nil] autorelease];
    [self presentModalViewController:mvc animated:YES];
}
@end

ModalViewController没有任何兴趣。

因此,按下按钮时应显示模态视图。当我按下按钮时,它会挂起一秒钟,然后崩溃回到主屏幕,没有错误信息。

我很难过,请告诉我我做错了什么!

1 个答案:

答案 0 :(得分:0)

  

ModalViewController没有任何兴趣。

虽然可能没有任何兴趣,但仍有可能导致问题的原因。

View Controller是否覆盖了loadView函数?

我遇到过几次问题的一个问题就是你不打电话给[super loadView];首先在您的覆盖loadView方法中。移动到该View Controller时,不执行此操作会导致崩溃。

祝你好好解决这个问题!

<磷>氮