iOS/Objective-C: Добавление объекта NSString в NSMutableArray, NSMutableArray является (null)

- (void)webViewDidFinishLoad:(UIWebView *)webView {
if (urlIndex == maxIndex) { 
    maxIndex = maxIndex + 1;

    NSString* sURL = webpage.request.URL.absoluteString;

    [urlHistory addObject:sURL];
    NSLog(@"%d: %@", urlIndex, [urlHistory objectAtIndex:urlIndex]);
    NSLog(@"%d: %@", urlIndex, webpage.request.URL.absoluteString);


    [sURL release];

    urlIndex = urlIndex + 1;
}
else {
    [urlHistory insertObject:webView.request.URL.absoluteString atIndex:(urlIndex - 1)];
}
}

Эта строка

    NSLog(@"%d: %@", urlIndex, [urlHistory objectAtIndex:urlIndex]);

печатает (null), в то время как эта строка

    NSLog(@"%d: %@", urlIndex, webpage.request.URL.absoluteString);

печатает фактический URL.

На моем initWithNibName у меня есть:

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
self = [super initWithNibName:@"Tab1ViewController" bundle:nil];

if (self) {
    urlHistory = [[NSMutableArray alloc] init];
    urlIndex = 0;
    maxIndex = 0;
}

return self;
}

Но я все еще продолжаю получать (null) при доступе к моему массиву. Почему так?

0
задан Gibson 31 October 2011 в 22:10
поделиться