Проблемы presentModalViewController: новичку нужна помощь - PullRequest
0 голосов
/ 01 сентября 2009

У меня есть UIViewController (который находится внутри tabUIController). В этом UIViewController я хочу представить модель viewcontroller, когда пользователь нажимает кнопку. Я не могу заставить это работать. С кодом, который у меня есть (см. Ниже), я добираюсь до стадии, когда я нажимаю кнопку, но я получаю странную ошибку «невозможно прочитать неизвестную команду загрузки 0x80000022».

Есть идеи? (для BrowserUIViewController я еще ничего не добавил, но это не имеет значения, с любым контроллером я просто хочу получить правильный синтаксис).

@interface AboutDoronUIViewController : UIViewController 
            <UITableViewDelegate, UITableViewDataSource> {

NSDictionary    *values;
NSArray         *keys;
BrowserUIViewController *browser;
AboutDoronUIViewController *about;

}

@property (retain, nonatomic) NSDictionary *values;
@property (retain, nonatomic) NSArray *keys;
@property (retain, nonatomic) BrowserUIViewController *browser;
@property (retain, nonatomic) AboutDoronUIViewController *about;
@end


...
- (void)tableView:(UITableView *)tableView 
didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    NSInteger section = [indexPath section];
    NSUInteger row = [indexPath row];

    NSString *getSection = [keys objectAtIndex:section];        
    NSArray *valuesForSection = [values objectForKey: getSection];

    NSString *selectedLink = [valuesForSection objectAtIndex:row];

    NSString *urlAddress = @"http://www.google.com";

    //Create a URL object.
    NSURL *url = [NSURL URLWithString:urlAddress];

    //URL Requst Object
    NSURLRequest *requestObj = [NSURLRequest requestWithURL:url]; //unused for now

    BrowserUIViewController *temp = [[BrowserUIViewController alloc] initWithNibName:@"BrowserUIViewController" bundle:nil];

    self.browser = temp;

    [self presentModalViewController:browser animated:YES];

    [urlAddress release];
    [valuesForSection release];
    [selectedLink release];
    [getSection release];
    [temp release];
}

1 Ответ

0 голосов
/ 01 сентября 2009

Код, который вы здесь видите, выглядит правильно, поэтому ваша проблема, вероятно, в другом месте.

Попробуйте поставить точки останова вокруг строки presentModalViewController:animated:, чтобы увидеть, какие строки выполняются до возникновения ошибки.

Попробуйте также установить точки останова в методах viewDidLoad и viewWillAppear: класса BrowserUIViewController, чтобы увидеть, какие из них, если они есть, вызываются до возникновения ошибки.

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