Почему происходит сбой моего приложения для iOS при попытке представить presentModalViewController? - PullRequest
0 голосов
/ 28 декабря 2010

Я весь день бился с этим, кажется, что-то простое, но я не могу понять.

У меня есть приложение для iOS, которое я создал с помощью "View-Приложение на основе шаблона в XCode.Вот код, который у меня есть:

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 голосов
/ 28 декабря 2010

Нет ничего интересного в ModalViewController.

Хотя может не быть ничего интересного, все же может быть что-то, вызывающее проблему.

Имеет ли ваш видКонтроллер переопределяет функцию loadView?

Проблема, с которой я столкнулся несколько раз, заключается в том, что вы не вызываете [super loadView];сначала в вашем переопределенном методе loadView.Невыполнение этого требования приводит к сбою при переходе в этот View Controller.

Удачи в попытке решить этот!

N

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...